Desenvolvendo aplicações em Java para AWS
Desenvolvendo aplicações em Java para AWS
Crie aplicações Java com Spring Boot e Docker na AWS com o ECS - Elastic Container Service
Sobre o Livro
Esse livro é destinado a desenvolvedores de software, com ou sem experiência em cloud computing, que desejam se aprofundar nos serviços oferecidos pela AWS. Também é uma fonte de conhecimento para administradores e operadores de sistemas, para se familiarizarem com as ferramentas de criação e administração de recursos de cloud computing da AWS.
As aplicações ensinadas nesse livro, como forma de exemplificação dos conceitos que serão apresentados, utilizam frameworks e ferramentas modernas, como Spring Boot e Docker. Dessa forma, o leitor aprenderá a trabalhar com tais tecnologias em conjunto com os serviços de cloud computing.
Durante o livro será utilizado o ECS, o Elastic Container Service é o serviço de orquestração de containers da AWS. Com ele é possível gerenciar a execução de aplicações baseados em containers Docker de forma robusta e escalável.
Todos os exemplos possuem código-fonte disponíveis para acesso gratuito. A seguir uma breve descrição de cada um deles:
- Project01: nesse exemplo será construída uma aplicação com serviços REST para cadastro de produtos de uma loja. Tais produtos serão armazenados em um banco de dados MySQL utilizando o AWS RDS. Em cada operação de cadastro, exclusão ou alteração de um produto, um evento será publicado em um tópico do AWS SNS, permitindo a integração com outras aplicações. Essa aplicação também fará importação de arquivos de notas fiscais através do AWS S3.
- Project02: esse projeto contará com uma tabela do AWS DynamoDB, para armazenar os eventos gerados pela aplicação de cadastro de produtos, integrado através de uma fila do AWS SQS.
- Lambda01: esse será um exemplo simples de uma aplicação serverless utilizando funções com o AWS Lambda, demonstrando como agendar a execução de uma função.
- Lambda02: nesse segundo exemplo, será demonstrado como executar uma função Lambda através de um evento publicado no SNS.
- Lambda03: aqui será apresentado como criar uma função Lambda para consumir arquivos importados no S3 e gravar seus dados em uma tabela do DynamoDB.
Caso tenha dúvidas ou sugestões, não hesite em contactar o autor por e-mail.
Divirta-se!
Table of Contents
-
1 - Introdução
- 1.1 - A quem se destina esse livro
- 1.2 - O que é AWS
- 1.3 - Serviços e recursos da AWS
- 1.4 - Estrutura didática do livro
- 1.5 - O que será necessário
- 1.6 - Limitações de recursos AWS pelo tipo de conta
- 1.7 - Próximos passos
-
2 - Preparação do ambiente
- 2.1 - Console da AWS
- 2.2 - Ambiente de desenvolvimento
- 2.3 ) Docker
- 2.4 - Postman
- 2.5 - Conclusão
- 3 - Conteúdo do livro
-
4 - Contas e regiões
- 4.1 - Identity and Access Management
- 4.2 - Regiões
- 4.3 - Zonas de disponibilidades
- 4.4 - Configuração do AWS CLI
- 4.4 - Conclusão
-
5 - Conceitos de Spring Boot
- 5.1 - Criando a base do projeto aws_project01
- 5.2 - Abrindo projeto no IntelliJ IDEA
- 5.3 - Estrutura do projeto
- 5.4 - Executando a aplicação pela primeira vez
- 5.5 - Gerando logs
- 5.6 - Criando um controller para expor um endpoint
- 5.7 - Depurando a aplicação
- 5.8 - Configurando a aplicação
- 5.9 - Criando serviços gerenciáveis pelo Spring
- 5.10 - Conclusão
-
6 - Amazon Elastic Compute Cloud
- 6.1 - Conceitos básicos do EC2
- 6.2 - Unidades de CPU e memória
- 6.3 - Tipos de instâncias de EC2
- 6.4 - Criando um instância EC2
- 6.5 - Acessando a instância via SSH
- 6.6 - Instalando uma aplicação numa instância EC2
- 6.7 - Monitorando a instância EC2
- 6.8 - Estados da instância
- 6.9 - Criando imagens e templates customizados para EC2
- 6.11 - Balanceador de carga
- 6.12 - Conclusão
-
7 - Criando recursos AWS com CloudFormation
- 7.1 - O que são templates
- 7.2 - Estrutura básica de um template
- 7.3 - O que são stacks
- 7.4 - Construindo um template para criar uma instância EC2
- 7.5 - Criando e gerenciando stacks
- 7.6 - Atualizando uma stack
- 7.7 - Apagando uma stack
- 7.8 - Conclusão
-
8 - Executando aplicações em containers Docker
- 8.1 - Como funcionam containers Docker
- 8.2 - Criando imagens Docker
- 8.3 - Executando aplicações em containers Docker
- 8.4 - Docker Hub
- 8.5 - Conclusão
-
9 - Amazon Elastic Container Service
- 9.1 - Cluster
- 9.2 - Tarefas
- 9.3 - Definição de serviços
- 9.4 - Aumentando o número de instâncias do cluster
- 9.5 - Atualizando o serviço com uma nova definição de tarefa
- 9.6 - Conclusão
-
10 - Amazon CloudWatch
- 10.1 - Visualizando logs da aplicação
- 10.2 - Visualizando métricas de um serviço de um cluster
- 10.3 - Criando alarmes
- 10.4 - Criando e monitorando eventos
- 10.5 - Conclusão
-
11 - Amazon Relational Database Service
- 11.1 - Criando um banco de dados MySQL
- 11.2 - Configurando a aplicação para acessar o banco de dados MySQL
- 11.3 - Persistindo entidades no banco de dados
- 11.4 Consultas avançadas
- 11.5 - Criando uma nova versão da aplicação
- 11.5 - Configurando o container da aplicação no ECS
- 11.6 - Monitorando a instância do banco de dados
- 11.7 - Conclusão
-
12 - Amazon Simple Notification Service
- 12.1 - Criando um tópico SNS
- 12.2 - Inscrevendo um e-mail para receber notificações
- 12.3 - Enviando notificações via SNS
- 12.4 - Atribuindo a permissão de acesso ao SNS ao papel ecsTaskExecutionRole
- 12.4 - Conclusão
-
13 - Amazon Simple Queue Service
- 13.1 - Porque usar um SQS
- 13.2 - Criando uma nova aplicação
- 13.3 - Configurando o projeto com JMS
- 13.4 - Consumindo mensagens de um SQS utilizando JMS
- 13.5 - Criando uma nova fila no AWS SQS
- 13.6 - Executando a aplicação no cluster-01 do ECS
- 13.7 - Testando o consumidor de mensagens da fila
- 13.8 - Monitorando SQS
- 13.9 - Conclusão
-
14 - Amazon DynamoDB
- 14.1 - Criando uma tabela no DynamoDB
- 14.2 - Configurando a aplicação para acessar a tabela
- 14.3 - Salvando entidades na tabela
- 14.4 - Visualizando os dados tabela do DynamoDB
- 14.5 - Testando e monitorando a tabela do DynamoDB
- 14.6 - Conclusão
-
15 - Amazon Simple Storage Service
- 15.1 - Criando a infraestrutura
- 15.2 - Configurando o projeto para acessar o S3 e o SQS
- 15.3 - Criando uma URL para upload de um arquivo
- 15.4 - Recebendo a notificação do S3 pela fila
- 15.5 - Visualizando as notas fiscais
- 15.6 - Publicando a nova versão da aplicação aws_project01
- 15.7 - Testando a importação de arquivos de nota fiscal:
- 15.8 - Conclusão
-
16 - Amazon Lambda
- 16.1 - Agendando a execução de uma função Lambda
- 16.2 - Invocando uma função Lambda através de uma notificação SNS
- 16.3 - Invocando uma função Lambda através de uma notificação do S3
- 16.4 - Monitorando a execução de funções Lambdas
- 16.5 - Conclusão
Authors have earned$10,261,184writing, publishing and selling on Leanpub, earning 80% royalties while saving up to 25 million pounds of CO2 and up to 46,000 trees.
Aprenda sobre como escrever na Leanpub
A garantia Leanpub incondicional, sem riscos, de 100% de satisfação
Durante 45 dias da data de compra você pode solicitar o reembolso total de qualquer compra Leanpub, em dois cliques. Nós processamos os reembolsos manualmente, então eles podem demorar alguns dias para aparecer. Veja os termos completos.
Atualizações grauitas. Sem DRM.
Se você compra um livro da Leanpub, você recebe atualizações gratuitas enquanto o autor atualizar o livro! Muitos autores utilizam a Leanpub para publicar os seus livros em andamento, enquanto eles estão os escrevendo. Todos os leitores recebem atualizações gratuitas, não importa quando ou por quanto eles compraram o livro (até mesmo de graça).
A maioria dos livros Leanpub estão disponíveis em PDF (para computadores), EPUB (para telefones e tablets) e MOBI (para Kindle). Os formatos que um livro inclui são exibidos no top direito dessa página.
Por último, livros Leapub não têm nenhuma proteção anti-cópias DRM sem sentido, então você pode facilmente lê-los em qualquer dispositivo suportado.
Aprenda mais sobre os formatos de ebook da Leanpub e aonde lê-los
Top Books
C++20
Rainer GrimmC++20 is the next big C++ standard after C++11. As C++11 did it, C++20 changes the way we program modern C++. This change is, in particular, due to the big four of C++20: ranges, coroutines, concepts, and modules.
500 QUIZ MMG COMMENTATI
ALS Medicina Generale500 Quiz degli ULTIMI Concorsi di Medicina Generale (2014/2016/2017/2018/2019)
Riassunti e suddivisi per area con Griglia risposte vuota e Griglia risposte esatte Ministeriale
Commentati con link alla fonte per approfondimento e ausilio allo studio
R Programming for Data Science
Roger D. PengThis book brings the fundamentals of R programming to you, using the same material developed as part of the industry-leading Johns Hopkins Data Science Specialization. The skills taught in this book will lay the foundation for you to begin your journey learning data science. Printed copies of this book are available through Lulu.
Ansible for DevOps
Jeff GeerlingAnsible is a simple, but powerful, server and configuration management tool. Learn to use Ansible effectively, whether you manage one server—or thousands.
Atomic Kotlin
Bruce Eckel and Svetlana IsakovaFor both beginning and experienced programmers! From the author of the multi-award-winning Thinking in C++ and Thinking in Java together with a member of the Kotlin language team comes a book that breaks the concepts into small, easy-to-digest "atoms," along with exercises supported by hints and solutions directly inside IntelliJ IDEA!
Continuous Delivery Pipelines
Dave FarleyThis practical handbook provides a step-by-step guide for you to get the best continuous delivery pipeline for your software.
C++ Best Practices
Jason TurnerLevel up your C++, get the tools working for you, eliminate common problems, and move on to more exciting things!
Visualise, document and explore your software architecture
Simon BrownA short guide to visualising, documenting and exploring your software architecture.
Discrete Mathematics for Computer Science
Alexander Shen, Alexander S. Kulikov, Vladimir Podolskii, and Aleksandr GolovnevThis book supplements the DM for CS Specialization at Coursera and contains many interactive puzzles, autograded quizzes, and code snippets. They are intended to help you to discover important ideas in discrete mathematics on your own. By purchasing the book, you will get all updates of the book free of charge when they are released.
Functional Design and Architecture
Alexander GraninSoftware Design in Functional Programming, Design Patterns and Practices, Methodologies and Application Architectures. How to build real software in Haskell with less efforts and low risks. The first complete source of knowledge.
Top Bundles
- #1
Software Architecture for Developers: Volumes 1 & 2 - Technical leadership and communication
2 Books
"Software Architecture for Developers" is a practical and pragmatic guide to modern, lightweight software architecture, specifically aimed at developers. You'll learn:The essence of software architecture.Why the software architecture role should include coding, coaching and collaboration.The things that you really need to think about before... - #2
Software Architecture and Design Practice Reference
2 Books
Dive deeper in Software Architecture with the Design Practice Reference. Learn all about software architecture and design from the books in this bundle:Software Architecture covers topics from quality attributes to designing and modeling components, interfaces, connectors, and containers, all the way to services and microservices. The Design... - #6
Linux Administration Complet
4 Books
Ce lot comprend les quatre volumes du Guide Linux Administration :Linux Administration, Volume 1, Administration fondamentale : Guide pratique de préparation aux examens de certification LPIC 1, Linux Essentials, RHCSA et LFCS. Administration fondamentale. Introduction à Linux. Le Shell. Traitement du texte. Arborescence de fichiers. Sécurité... - #7
The Python Craftsman
3 Books
The Python Craftsman series comprises The Python Apprentice, The Python Journeyman, and The Python Master. The first book is primarily suitable for for programmers with some experience of programming in another language. If you don't have any experience with programming this book may be a bit daunting. You'll be learning not just a programming... - #8
All the Books of The Medical Futurist
6 Books
We put together the most popular books from The Medical Futurist to provide a clear picture about the major trends shaping the future of medicine and healthcare. Digital health technologies, artificial intelligence, the future of 20 medical specialties, big pharma, data privacy, digital health investments and how technology giants such as Amazon... - #10
Mastering Containers
2 Books
Docker and Kubernetes are taking the world by storm! These books will get you up-to-speed fast! Docker Deep Dive is over 400 pages long, and covers all objectives on the Docker Certified Associate exam.The Kubernetes Book includes everything you need to get up and running with Kubernetes!