Serverless Framework - Creating serverless applications

  • View
    40

  • Download
    3

Embed Size (px)

Text of Serverless Framework - Creating serverless applications

  • Criando Aplicaes

  • Wallison Marra- Em 2006 iniciei meu caminho pelo mundo da web.- DevOps Engineer.- Entusiasta da tecnologia.- Evangelista Amazon Web Services.- Games, famlia e uma boa cerveja.

  • Serverless?Serverless conjunto de recursos que possibilita rodar aplicaes sem os processos comuns de servidores.

    Dependem de servios de terceiros, lgica do lado do cliente e chamadas de procedimentos remotos para execuo (FaaS - Function As A Service).

  • Aplicao ServerlessSe designa a execuo de trechos cdigos sem a necessidade de provisionamento de servidores e so baseados em servios, sendo executados a partir de eventos como Push Notification, API Gateway, Cron, etc..

    Runtime Database

    Push notification

  • Aplicao Serverless - API

    Runtime Database

    Api Gateway

    Cache

  • ProvedoresAWS o provedor mais utilizado para este tipo de arquitetura, com o servio chamado Lambda.

    E outros mais...

  • Serverless - AWS LambdaServio de computao em nuvem sem servidores, administra servios adjacentes automaticamente garantindo plena execuo de sua aplicao devido a sua infraestrutura de alta disponibilidade.

  • AWS Lambda - Exemplos de Aplicaes- Gerar thumbs de imagens assim que elas so enviadas para um bucket s3.- Processos agendados (CRON).- Executar cdigos baseado em Push Notification (mobile).- Comunicao com dispositivos (IoT).- Execuo de processos baseados em filas.

  • AWS Lambda - Recursos- Runtimes suportados:

    - Python- NodeJS- Java- C#- Outras esto a caminho

    - Variveis de ambiente.- Logs.

  • AWS Lambda

    Pros

    - Custos.- Ambiente resiliente.- Arquitetura escalvel.- Paralelismo.

  • AWS Lambda

    Contras

    - Recursos limitados (memria, tempo de execuo, etc...)- Administrao complexa (painis de administrao ou CLI).- CLI ajuda, mas no to prtico quanto um framework.

    $ aws lambda create-function \--region us-west-2 \--function-name helloworld \--zip-file fileb://file-path/helloworld.zip \--role role-arn \--handler helloworld.handler \--runtime nodejs4.3 \--profile adminuser

  • Blz, mas como criar uma aplicao

    de forma simples e rpida?

  • - Criado em 2015.- OpenSource.- Verso estvel lanada no final de 2016.- 14k starts Github.- Receberam um investimento de 3 milhes de dlares no final de 2016.- Comunidade em crescimento constante.

    Serveless Framework - serverless.com

  • - Surgiu com a dificuldade de realizar deploy de muitas aplicaes em AWS Lambda.

    - Automatiza processos adjacentes deixando sua aplicao online com comandos simples e amigveis.

    - Gerncia configuraes adicionais, como quantidade de memria, eventos e recursos atravs de um arquivo .yml.

    - Projeto apoiado pela Amazon.- Suporta recursos como API Gateway, SNS, Cloud Wacth Events,

    DynamoDB, kinesis Stream, IoT...

    Serveless Framework - serverless.com

  • Serveless Framework - serverless.comAWS Lambda CLI - Deploy

    $ aws lambda create-function \--region us-west-2 \--function-name helloworld \--zip-file fileb://file-path/helloworld.zip \--role role-arn \--handler helloworld.handler \--runtime nodejs4.3 \--profile adminuser

    Serverless Framework - Deploy

    $ serverless deploy

  • HANDS-ON!

  • Informaes adicionais- AWS Lambda possui at 1 milho de requisies grtis mensalmente

    (aproveite e teste suas aplicaes).- Serverless Framework possui plugins que podem auxiliar muito:

    - Alexa Plugin.- Test-driven (jest e mocha).- Offline application (run lambda and api gateway locally).- Webpack support.- Outros mais- Acces: https://github.com/serverless/plugins

  • Contedos- JustServeless: Phillip Muens- Blog AWS Lambda- Exemplos oficiais: Serverless Framework- Exemplos desta apresentao- Github: Wallison Marra

    https://github.com/JustServerless/awesome-serverlesshttps://github.com/JustServerless/awesome-serverlesshttps://aws.amazon.com/blogs/compute/category/aws-lambda/https://aws.amazon.com/blogs/compute/category/aws-lambda/https://github.com/serverless/exampleshttps://github.com/serverless/exampleshttps://github.com/wmarra/devincomany-hotmarthttps://github.com/wmarra/devincomany-hotmarthttps://github.com/wmarrahttps://github.com/wmarra

  • Obrigado!unguedes@gmail.com