Desenvolvendo microsserviços em Java na AWS
Desenvolvendo microsserviços em Java na AWS
Crie microsserviços em 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.
Os microsserviços ensinados 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 microservices 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!
Tradução
Sumário
-
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
A garantia Leanpub incondicional, sem riscos, de 100% de satisfação
Durante 60 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.
Ganhe $8 em uma compra de $10 e $16 em uma compra de $20
Pagamos 80% de royalties em compras de $7,99 ou mais e 80% de royalties menos uma taxa fixa de 50 centavos em compras entre $0,99 e $7,98. Você ganha $8 em uma venda de $10 e $16 em uma venda de $20. Portanto, se vendermos 5000 cópias não reembolsadas do seu livro por $20, você ganhará $80,000.
(Sim, alguns autores já ganharam muito mais do que isso no Leanpub.)
Na verdade, os autores ganharammais de 13 milhões de dólares escrevendo, publicando e vendendo no Leanpub.
Saiba mais sobre escrever no Leanpub
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) e EPUB (para telefones, tablets, e 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