AWS Para Desenvolvedores
(5250)
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
Bom, se não me engano é o primeiro livro em português sobre o Amazon Web Service (também conhecido como AWS) e, em minha opinião, deu muito certo. O autor já bem conhecido no mundo mobile pelos excelentes livros já feitos e agora se saiu muito bem com um livro mais para área de infraestrutura.
Antes de falar do que achei do livro e o que ele pode nos oferecer queria apresentar a problemática que temos hoje com alguns grandes servidores brasileiros. Se você trabalha com desenvolvimento e as vezes é o encarregado de contratar um plano de servidor você deve conhecer bem o problema, os planos! Planos que as vezes não são seguidos por servidores de qualidade. Hoje a maioria dos servidores brasileiros não lhe permite ter acesso completo ao servidor (longe disso) para por exemplo: atualizar o apache, instalar novas libs, e por ai vai. Fora que se seu site ou APP ganha muito acesso você tende a não ter um crescimento de serviço justo, pois ou você deixa como está e o servidor acaba caindo devido ao número de acessos não suportado ou você faz um upgrade e acaba pagando por um valor que passa a ser um tanto injusto, pois você ainda não tem o número de acessos suficiente para levar o novo servidor atualizado ao nível que ele aguenta, ou seja, acaba pagando por uma coisa que ainda não utiliza, pois o servidor atualizado além de caro aguenta muito mais do que o número de acessos que você está tendo agora. Pior é o caso quando na verdade os acessos de seu sistema aumentam em alguns horários do dia e mesmo assim você precisa suportar os acessos desses horários e acaba pagando uma nota por servidores que são uteis apenas em poucas horas do dia. Escalonamento justo não há.
No livro Amazon Web Service (a partir daqui vou passar a chamar apenas de AWS) Para Desenvolvedores o autor apresenta as principais funcionalidades para que possamos instalar e utilizar um servidor (ou vários) com balanceamento de carga, ip dedicado, banco de dados compartilhado, snapshots de leitura de banco de dados, servidor de conteúdo estático (HTML ,CSS, JavaScript, imagens, ...), definição de segurança do firewall ou regras de segurança e por ai vai. O livro realmente é para programadores, pois há várias partes em que temos de colocar a mão no código para ver a funcionalidade rodar via API, fora os momentos em que temos de utilizar o shell do Linux para instalar e configurar algumas aplicações como: PostgreSQL, MySQL, PHP, Java, Apache / Tomcat, ... Apesar de ter um pouco mais de 500 páginas o livro não é um livro que demora muito a ser lido, pois há muitos prints de tela para compreender o que deve ser feito para a funcionalidade apresentada rodar no AWS, os prints são coisas a destacar no livro, pois facilita muito o acesso e liberação dos serviços do AWS. Uma outra grande vantagem no livro é que mesmo você não sabendo nada sobre Linux é possível seguir adiante sem nenhum problema, pois os comandos necessários são apresentados todos em um capítulo dedicado a quem não tem expertise nesse sistema operacional, além deles serem utilizados em boa parte do livro. Alias o autor mostra o passo a passo para instalar as ferramentas que serão utilizadas ao longo dos exemplos do livro, literalmente o passo a passo a ser seguido no shell do Linux, e pode acreditar, é muito tranquilo, mesmo se você não trabalha com o Linux (meu caso).
No livro o autor mostra duas características (dentro de várias) que acredito serem as mais importantes e problemáticas hoje no mundo dos servidores: balanceamento de carga com múltiplos servidores e balanceamento de acesso ao banco de dados central. Esse ultimo é fenomenal, pois ele permiti que vários snapshots (do banco de dados principal) de acesso de leitura sejam utilizados para desafogar o acesso ao banco master, assim as chamadas de leitura de dados (SELECTs) são enviadas a esses snapshots que são consistentes com o banco de dados principal, pois o sistema da AWS se encarrega de atualizar os snapshots para iguala-los. Não sei se você já passou por isso, mas para mim pior do que um servidor fraco é o banco de dados em um servidor fraco, pois ele antes de cair fica tão lento que os usuários nem sequer esperam para acessar o conteúdo completo de seu sistema devido a lentidão (muito acesso, muitos locks no banco de dados – mesmo em InnoDB - e a coisa somente vai se agravando). O autor mostra que ambas as duas funcionalidades comentadas são de fácil implementação no AWS, somente não encontrei se é possível realizar o escalonamento automático de snapshots do banco de dados principal quando o número de acesso começa a aumentar rapidamente, pois o escalonamento automático de servidores é sim possível e tem capítulo no livro dedicado a falar somente sobre isso, que também é algo muito importante, mas que pode sair caro se site de acesso, mas não tem retorno monetário!
Em praticamente todos os capítulos o autor deixa uma série de links para o leitor se aprofundar mais no assunto, e dentre os links tem o de preços. Os preços do AWS não são excelentes, pois você somente paga pelo o que utilizar, porém eles podem sair um pouco mais caros do que os preços praticados em seu servidor convencional hoje, mas mesmo assim acho válido, pois temos um ano de serviços gratuitos para utilizar o AWS (respeitando os limites do nível de uso gratuito).
Pontos negativos do livro: logo no começo o autor fala que abordará os exemplos com as tecnologias PHP e Java, não, na verdade ele utiliza o Java e algumas vezes o PHP, se me lembro o PHP é utilizado apenas quando há o exemplo de acesso ao banco de dados, quando há a utilização do SNS, SES e outros o autor utiliza apenas o Java, tendo em mente que ele utiliza juntamente com o Eclipse e o plugin do AWS instalado nesse, logo é muito mais prático, porém acredito que o número de desenvolvedores PHP é bem maior (quando em desenvolvimento Web) do que o número de devs Java, logo achei que foi ruim se prender ao Java em exemplos que seriam mais bem utilizados pelos leitores se fossem em PHP, ou seja, você terá de entrar na documentação do AWS para PHP e converter o código para realizar os testes (as vezes é bem fácil, as vezes não). Outra coisa é que o AWS tem uma série de programas de certificação de profissionais, que uma coisa que é muito buscada nas empresas privadas de tecnologia no Brasil, e o livro não cita nada sobre isso, eu acabei “esbarrando” na página de certificação. Outro problema é quanto ao “ping” no servidor que está no AWS, passei já alguns sites meu (peffans.com e capixi.com) para o AWS e quando eu ia dar o “ping” via prompt de comando o servidor não me respondia, como o livro é para desenvolvedores uma das primeiras coisas que fazemos na utilização do servidor (acredito eu) é realizar o ping para ver se está tudo ok, e tem um problema quanto ao ping, pois se nas regras de segurança do servidor a opção “All ICMP” não estiver liberada pelo menos para seu IP o ping não tem resposta e isso, mesmo que não seja verdade, pode preocupar em muito o desenvolvedor, pois ele pode acabar achando que o sistema somente esta no ar para ele. E para finalizar os pontos negativos e acredito ser o mais sério é i problema do aviso de conta verificada pela Amazon, logo quando abrimos a conta temos de fornecer nossos dados de pagamento e somente podemos começar a utilizar o AWS depois de a conta ser verificada. Quando acessamos o dashboard uma mensagem aparece falando que esse procedimento de verificação pode levar algumas horas, e até ai tudo bem, porém mesmo se sua conta não for validada a mensagem de verificação ainda persisti e nada é informado a você sobre isso e eu acabei perdendo mais de um dia esperando a verificação da conta até que achei estranho e fui buscar nas FAQs do AWS se esse tempo era realmente verdadeiro, e não, não era, é um bug do sistema, ele não valida seus dados de pagamento (aparentemente é isso) e também não lhe avisa, logo a solução discutida pelos usuários do AWS é cadastrar novos dados para pagamento que rapidamente, se válido, libera o dashboard para o desenvolvedor começar a utilizar.
Então é isso, recomendo em muito a leitura do livro, recomendo muito você a obter esse conhecimento sobre o AWS (servidores cloud em geral), pois se você é da área de tecnologia vai expandir em muito os seus horizontes, não tem nenhum “bicho de sete cabeças” no estudo de infraestrutura na nuvem e acredito ser um baita diferencial para os profissionais que tenham esse conhecimento daqui a poucos anos. O livro é fenomenal e é um livro daqueles que você tem de levar debaixo do braço até o momento em que realmente você perceber que já domina por completo o assunto. Mesmo com os pontos negativos apresentados vou ficar com cinco estrelas, pois como o livro é direcionado a desenvolvedores, nós temos de ter a sagacidade de resolver esses tipos de problemas que aparecem. Mais uma vez o autor está de parabéns, outro belo lançamento.
Vlw.
Comentários Facebook