Introdução ao Serverless com Amazon AWS

E ai pessoal, tudo bom??

Já faz tempo que venho projetando sistemas inteiramente Serverless na Adapcon Software e Inovação, e hoje como estou de férias fiquei com vontade de trazer um pouco desse conhecimento pra compartilhar com vocês.

Pensei em criar este post como uma introdução para iniciar uma série voltada aos testes desta arquitetura utilizando os serviços da Amazon AWS, então espero que gostem. :D

E ai… Serverless?

Arquitetura Serverless é o conceito destinado para desenvolvimento sem uso de servidores, utilizando serviços de terceiros que são executados de forma temporária e isolada, podendo variar desde execução de códigos, banco de dados, armazenamento de arquivos em geral.

Consegue imaginar você criando uma aplicação que fica 247 disponível e você só será cobrado quando um usuário utilizar?

Isso mesmo! Serverless é o paraíso. :D

Por que Amazon AWS?

Amazon AWS ou AWS, são abreviaturas para Amazon Web Services que foi a empresa declarada pioneira em desenvolver serviços seguindo o conceito Serverless.

Para turbinar o mercado de serviços por demanda a Amazon AWS trouxe alguns serviços como Amazon Lambda, Amazon DynamoDB, Amazon S3 e Amazon API Gateway.

Os serviços que eles adicionaram no mercado foi a peça chave para se começar a utilizar esta arquitetura com frequência, e não é atoa que eles viraram os queridinhos dos desenvolvedores quando o assunto é Serverless

Nesse tempo de trabalho na Adapcon, venho aprimorando fortemente com essa provedora e posso dizer que mesmo com o Google já atuando neste mercado, eu não trocaria a Amazon AWS por enquanto.

Sou daqueles que se empolga quando lembro do Lambda. :D

Quero inovar sem me enterrar!

Você já ouviu um desenvolvedor ter uma ótima ideia e não poder aplicar por falta de investimento?

Não sei você mas eu já passei por isso muitas e muitas vezes!

A utilização do Amazon Lambda, permite que o desenvolvedor possa criar uma função utilizando algumas linguágens como Nodejs, Java, C#, Python, GO e executar de forma automaticamente escalável na hora que for necessário, pagando somente pelo recurso e tempo utilizado desta execução.

Se esta função necessitar salvar ou buscar dados, o desenvolvedor só precisar importar a SDK desenvolvida pela Amazon AWS, e o código pode simplesmente se conectar ao seu serviço de banco de dados Amazon DynamoDB que é um ótimo banco NoSQL.

Isso também vale para o serviço Amazon S3, que permite que o código possa salvar e buscar arquivos físicos como planilhas, fotos em geral.

Viu como tudo se junta e deixa tudo mais fácil?

Já está bonito e nem comentamos sobre a escalabilidade automática hehe…

Já imaginou se você pudesse executar tudo isso com requisições HTTP ou HTTPS? :DDD

É ai que entra o Amazon API Gateway, permitindo chamar um determinado serviço utilizando requisições HTTP ou HTTPS, e ainda permitindo que a requisições passe dados para o serviço utilizando a header ou body da requisição, ou que o serviço retorne dados para a requisição, utilizando objetos como JSON.

Hããããã? Não pode ser!

É isso mesmo! Funções prontas para serem executadas e disponíveis 247, com escalabilidade automática e seus custos baseados na utilização.

Eu quero aprender isso ai!

Se você não conhece e quer aprender mais sobre a arquitetura Serverless, vou deixar um link para o artigo de Mike Roberts que foi postado no site Martinfowler.

Artigo - Serverless Architectures

Este artigo descreve com detalhes cada conceito, prós e contras da arquitetura. Para os que querem se aprofundar, esta é a leitura ideal.

Fique ligado aqui no blog que vai ter vários e vários testes com cada serviço da Amazon AWS, não só com os descritos acima, mas também envolvendo todos os atuais já lançados em produção!

Conclusão

Galera eu vim aqui só deixar um gostinho do que vou trazer para o blog, e poder passar para vocês o que está acontecendo no mercado de desenvolvimento atualmente.

Fiquem ligados no blog que vou trazer muitas novidades!

Spoiler “Alexa”!

Um abraço pra galera que é fissurada em desenvolver, e se gostou compartilha este post com seus colegas de trabalho e amigos :D

Obrigado.

Compartilhe este post.