Amazon Web Services Em Ação
(4738) (3)
CategoriasAndroid, Design, Protótipo
AutorVinícius Thiengo
Vídeo aulas186
Tempo15 horas
ExercíciosSim
CertificadoSim
CategoriaDesenvolvimento Web
Autor(es)Robert C. Martin
EditoraAlta Books
Edição1ª
Ano2023
Páginas416
Opa, blz?
Terminei a leitura do livro Amazon Web Services Em Ação de Andreas e Michael Wittig, editora Novatec / Manning. Os autores são consultores AWS (mas não vinculados a AWS) na Alemanha.
Lhe adianto que o livro não é para quem está iniciando no AWS. Se esse for seu caso, pode ler essa resenha sem problemas, mas para estudo comece pelo livro do Ricardo Lecheta, “AWS Para Desenvolvedores” também da Novatec. O livro do Lecheta tem também abordagens iniciantes no Linux para quem não é Linuxer.
O livro Amazon Web Services Em Ação está dividido em quatro partes onde vi com maior importância a Parte I (um) e a Parte IV (quatro) onde são explicados respectivamente o que é o AWS (bem mais detalhado do que somente falar que é um servidor cloud) e o planejamento da estrutura de nossos projetos de forma eficiente.
Logo no começo do livro os autores apresentam uma série de casos em que o AWS poderia ser a solução. Uma apresentação do que é o AWS e a comparação com alguns outros serviços clouds concorrentes como: Microsoft Azure e Google Cloud. Não há comparação com o Heroku e o Digital Ocean, a principio esses dois não estão na mesma categoria que o AWS.
Nos capítulos iniciais do livro há também a verificação de preço de um pequeno sistema pronto para ir a produção (um blog institucional). Nessa parte os autores ensinam como fazer para obter o preço aproximado de uma possível implementação. Você developer deve criar toda a configuração necessária (EC2, Load Balancer, S3, CloudFront, Transcoder, …) e logo depois seguir para a página de calculadora da AWS para verificar quanto ficaria a mensalidade dessa configuração.
A informação de pagamento mensal deveria ser fornecida pela AWS logo depois da instalação de qualquer outro sistema no dashboard do usuário, seria bem mais prático. Mas enfim, enfatizei essa parte aqui, pois saber preços na AWS antes de utilizar não é uma tarefa fácil, digo, preços próximos do real.
Um dica dos autores é que devemos começar com a configuração mínima possível que atende a nossa aplicação instalada na AWS, de acordo com a necessidade nós podemos ir incrementando. A incrementação e algo simples e rápido depois que você gasta um tempo utilizando o dashboard da AWS.
Fique atento as dicas que os autores dão no decorrer do livro, essas dicas são o diamante lapidado do livro, pois como citado no inicio, ambos são consultores AWS e têm anos de experiência com o sistema, logo eles sabem o que da certo e o que não da.
Outra parte importante apresentada nos capítulos iniciais é a estratégia para economizar na contratação de serviços EC2 (Elastic Compute Cloud), os autores mostram como obter instancias reservadas podendo economizar até 60% do que na estratégia de montar as instancias via dashboard. Apresentam também como obter instancias via leilão, ou instancias Spot, que nos permitem ter até 90% de desconto, porém instancias Spot não são indicadas para trabalharem como servidores Web convencionais ou backend Web mobile.
Depois do início show de bola o conteúdo começa a ficar mais complexo. Diferente do livro do Lecheta onde quando há trabalho com alguma ferramenta da AWS é apresentado os caminhos via Dashboard Web, os autores de Amazon Web Services Em Ação optaram por utilizar o CloudFormation que permite a configuração de todo um sistema em uma única chamada ao um script de configuração no formato json.
Sem problemas utilizar o CloudFormation, o problema é quando temos que frequentemente parar a leitura para abrir um link ou no GitHub ou no AWS S3 para destrinchar o código completo do arquivo de configuração. Os autores até colocam a parte importante na explicação do código no livro, mas em alguns trechos não foi o suficiente.
Assuntos para sistemas já com alta carga de processamento, como: OpsWorks e DynamoDB. Esses são abordados até mesmo com exemplos práticos. O OpsWorks pode não encher seus olhos, mas o DynamoDB provavelmente sim, ele é da família de entidades de persistência NoSQL (Not only SQL). Os exemplos todos foram em Node.js, implementados sem problemas, pois os autores mostram até mesmo a instalação do Node.js em sua máquina.
Um ponto alto do livro são as figuras explicando as arquiteturas dos exemplos ou somente comentadas por eles, elas literalmente facilitam em muito o entendimento do conteúdo em texto. A explicação do que são zonas de disponibilidades, região, data centers (no contexto da AWS), ... é bem detalhada. Alias a parte de explicação de como funciona toda a estrutura do AWS é muito útil, pois é com esse conhecimento que é possível montar corretamente uma arquitetura tolerante a falhas para nosso sistema.
Senti falta de conteúdos como SNS (Push Notification Service), SES (Simple Email Service) e Elastic Transcoder. O CloudFront eles comentaram sobre, no contexto de servidores CDN, mas logo informaram que não abordariam o assunto. CloudFront que junto ao S3 lhe permite fornecer conteúdos de Vídeo e Audio aos usuários de sua aplicação por um custo cabível em seu bolso e sem a necessidade de ter um sistema de streaming parrudo como deve ser o do Youtube e Vimeo, por exemplo.
A abordagem do RDS ficou bem completa, incluindo uso no modo Multi AZ para alta disponibilidade de nosso sistema. ELB (Elastic Load Balance) e o SQS (Simple Queue Service) são também abordados por completo e com vários exemplos práticos. Fora de série a abordagem sobre segurança, principalmente a proteção da conta root no AWS com a realização total de login somente por meio de fornecimento de token aleatório gerado em APP mobile, processo também conhecido como autenticação multifator (MFA).
Os autores indicam não utilizar a conta root no dashboard AWS (muito menos nos scripts com as SDKs). A dica é: entre, crie uma nova conta com acesso de administrador e então utilize somente ela para acesso.
A parte final do livro, parte IV, é onde tem também o conteúdo mais valioso, pois é nessa parte que os autores utilizam tudo que já foi abordado para construírem sistemas tolerante a falhas síncronos e assíncronos.
Os pontos negativos ficam principalmente na não abordagem do SES, incluindo uma abordagem de envio de emails em massa por segundo. No problema de montagem de conteúdo via CloudFormation, em alguns exemplos iniciais eles não funcionam e você tem de destrinchar os conteúdo dos arquivos json (ROLLBACK_COMPLETE). Na não abordagem do Lambda e do API Getway, mesmo apresentado esses dois últimos como solução simples de um problema que eles resolveram com um algoritmo um pouco complexo. E a não abordagem do Route 53 e configuração do HTTPS no AWS.
Mesmo com os conteúdos que penso que deveriam ter sido abordados, o livro ficou show de bola, mas é aquilo, é para quem já conhece o AWS. Não sei como está sua dedicação no estudo de conteúdo sobre servidores cloud, mas se ainda não deu o primeiro passo recomendo que inicie, pois é o que há em termos de infraestrutura hoje para APPs mobile e Web. Além da facilidade e da não necessidade de um time de profissionais de hardware, o custo é bem menor que manter um próprio pool de servidores.
Então é isso, se está se dedicando também no AWS o livro é uma boa complementar os estudos. Vou de quatro estrelas.
Vlw
Comentários Facebook