Tutorial AWS Lambda, como criar a sua primeira função?

Aprenda o que é AWS Lambda e veja o passo a passo para criar a sua primeira função.


AWS Lambda é uma forma de executar código sem a necessidade de criar ou gerenciar servidores (servless), também conhecido como function-as-a-service. Você fornece a AWS o código de uma função, que será acionada por um evento de gatilho (ex. certo período de tempo, requisições web, etc), e é cobrado pela quantidade de vezes que a sua função for acionada.

Uma das grandes vantagens da utilização do serviço AWS Lambda é a escalabilidade, basicamente a AWS irá escalar automaticamente o seu código de acordo com a quantidade de solicitações de execução que a sua função receber. Adotando esse modelo, você não se preocupa com a alocação de infraestrutura de mais ou de menos para a execução do recurso, o que pode reduzir a complexidade e até mesmo os custos com a infraestrutura do projeto e tornar o desenvolvimento de soluções mais simples e rápido.

Por oferecer muitos serviços e funcionalidades, a documentação da AWS pode ser intimidante para algumas pessoas. Neste tutorial irei guiar você passo a passo até a criação da sua primeira função Lambda na AWS para que tenhamos uma visão geral de como esse serviço pode ser utilizado. Vamos lá!

Criação/Acesso da sua conta AWS

Para começar será necessário primeiramente criar uma conta na AWS por aqui, ou acessar sua conta caso você já tenha. A boa notícia é que mesmo com a conta a nível gratuito que é oferecida pela Amazon você conseguirá executar suas funções Lambda sem nenhum problema e ainda receberá um limite de um milhão de requisições gratuitas que poderão ser feitas por mês.

Certifique-se que você preencheu todos os dados inclusive de pagamento, mesmo para a conta gratuita a Amazon exige a confirmação de um cartão de crédito para que você consiga ter acesso aos serviços.

Criando uma função Lambda

Uma vez que você tenha acessado a sua conta já podemos começar a configurar nossa função, é bem simples. Acesse o menu Services no canto superior esquerdo, e depois dentre as opções que aparecerão na sua tela escolha Lambda que fica dentro da seção de Computação, como mostrado nas imagens.

 

Agora estamos no nosso console Lambda, iremos acessar o botão laranja do lado esquerdo“Criar função”.

 

Antes de continuarmos, para criar uma função Lambda é importante identificar quais serão as entradas e os gatilhos da sua função, identificar o ambiente de execução e decidir quais permissões e tipos de serviço serão utilizados.

As entradas e saídas da sua função estão fortemente relacionadas com o evento de gatilho que irá acionar a execução da sua função. As funções Lambda normalmente trabalham com uma entrada no formato JSON e costumam responder uma saída no mesmo formato. Um evento gatilho muito utilizado é, por exemplo, uma requisição web.

Neste tutorial iremos escolher a opção de “Usar um esquema” para criação da nossa função, mas depois você pode explorar as demais opções disponíveis. Iremos também pesquisar por um exemplo de esquema já pronto, é só digitar “hello” no campo de busca, apertar enter, e escolher a segunda opção “hello-world-python”. Python será uma boa opção para começarmos pois poderemos alterar nosso código direto pelo console.

 

Depois de escolhido nosso esquema hello-world-python clicaremos em “Configurar”para prosseguir.

 

Isso nos levará até o formulário da imagem abaixo, vamos definir o nome da nossa função e escolher o papel de execução, o papel default com as permissões básicas irá permitir o envio dos logs de saída para o CloudWatch. Além disso, vemos também o código de exemplo que é fornecido em python, basicamente uma função com o nome “lambda_handler” será chamada cada vez que o evento de gatilho acontecer e irá mostrar os valores associados aos campos “key1”, “key2” e “key3” do arquivo JSON.

Vamos clicar em “Criar função” para confirmar.

 

Bom, agora temos a nossa função Lambda finalmente criada, vamos fazer uma edição simples nela, descomentando o JSON dump na linha 7. Depois é só salvar a alteração no botão “Implantar”que fica na parte superior direita.

 

E agora é hora de testar, felizmente a AWS já disponibiliza a parte de teste de forma simples, é só acessarmos o botão testar no canto superior e veremos um formulário como mostrado abaixo, deixaremos todos os campos com o valor default preenchendo apenas o nome do nosso evento de teste, e depois prosseguimos no botão “Criar”.

 

Nosso teste foi salvo e será possível rodá-lo acessando novamente o botão “Testar”, com isso nosso teste será executado e o resultado aparecerá logo abaixo na tela como podemos conferir no “Execution Result”.

 

Congrats! Acabamos de escrever e testar nossa primeira função Lambda na AWS, mas e agora? Um próximo passo interessante é dar uma olhada na documentação da AWS Lambda também, ela irá te dar ainda mais insights sobre como o serviço pode ser utilizado e todas as suas funcionalidades.

Queremos ressaltar também que, apesar das funções Lambda serem uma solução muito interessante, existem algumas limitações que devem ser consideradas para o seu caso de uso. Elas possuem um limite de tempo para execução, depois de 15 minutos sua função será forçadamente parada, independente de ter finalizado ou não. Há também um limite para o tamanho da função e para o tamanho do body, se tratando de requisições. Além disso, a arquitetura sem servidor requer uma mudança de mentalidade, não há estado local 

Por fim, as funções Lambda são mais focadas em pequenos jobs que precisam ser rodados com periodicidade, se tornando uma ferramenta muito útil para coordenar atividades entre diferentes serviços por meio de eventos. Tendo isso em mente, espero que possam fazer um bom uso desta ferramenta. Este foi um artigo introdutório mas esperamos trazer novos tutoriais com abordagens mais avançadas sobre o uso de AWS Lambda, fiquem atentos aqui no blog e até a próxima!

 

Se Inscreva Na Nossa Newsletter Tenha Acesso Aos Melhores Artigos