SlideShare a Scribd company logo
1 of 55
Download to read offline
Buenas prácticas en
proyectos serverless
Marcia Villalba
@mavi888uy
Hola!
Full stack developer @Rovio
AWS Serverless Hero
Serverless Framework Champion
YouTube channel: youtube.com/
foobar-codes
@mavi888uy
Beneficio principal
Reducir el tiempo de
salida al mercado
Serverless
•Pagas por lo que usas
•No hay costos fijos
•Escala automaticamente
•No hay que gestionar infraestructura
BACKEND AS A SERVICE
(BAAS)
Function as a service
(FAAS)
Serverless
Backend as a service (BAAS)
•Concepto con más de 10 años
•AWS S3 fue de los primeros BaaS
•Similar a SaaS
Backend as a service (BAAS)
Servicios que son componentes
genéricos que están conectados
a nuestras aplicaciones de forma
transparente mediante APIs.
Backend as a service (BAAS)
AWS
DynamoDB
Firebase Auth0Algolia
Function as a service (FaaS)
•Nació en 2014 con AWS Lambda
•Siguiente evolución de la computación
•Nueva forma de ejecutar y diseñar aplicaciones
Cómo ejecuta el código?
Tradicionalmente…
Instancia
Tradicionalmente…
Instancia
Aplicación
Tradicionalmente…
Instancia
Aplicación Función 1
Función 2
Función 3
Tradicionalmente…
Instancia
Aplicación
Instancia
Aplicación
Instancia
Aplicación
Instancia
Aplicación
Tradicionalmente…
Instancia
Aplicación
Instancia
Aplicación
Instancia
Aplicación
Instancia
Aplicación
Tradicionalmente…
Instancia
Aplicación
Instancia
Aplicación
Instancia
Aplicación
Instancia
Aplicación
Función 1
FaaS..
Plataforma FaaS
Función 1
Función 2
Función 3
FaaS..
Plataforma FaaS
Función 1
Función 2
Función 3
Virtual container
Función 2
HTTP Request
FaaS..
Plataforma FaaS
Función 1
Función 2
Función 3
Función 2Función 2Función 2Función 2Función 2Función 2Función 2Función 2Función 2Función 2Función 2
Miremos un ejemplo muy sencillo
de un proyecto serverless
Buenas prácticas
Para el desarrollo de proYectos
Serverless
Un sistema sano comienza desde su diseño
Design Development Testing Deployment Monitoring
Porqué gestionar proyectos Serverless es complejo?
Buenas practicas para
Diseñar
Sistemas Serverless
Arquitectura
orientada a eventos
Arquitectura
orientada a eventos
Sistema distribuido
Asincrona
Sistema debilmente
acoplado
Principio de responsabilidad única
Máquinas de estado para orquestar las funciones
Diseño resistente a errores y a eventos duplicados
Buenas practicas para
Desarrollar
Sistemas Serverless
Pensa en micro servicios
Infraestructura como código
Uso de diagramas de arquitectura
Uso correcto de nombres y tags
Información a incluir en los nombres:
•Nombre del servicio/proyecto
•Ambiente de desarrollo
•Nombre del recurso
Tener un estándar para todos los servicios
Buenas practicas para
Testear
Sistemas Serverless
Pone la lógica de negocio
fuera de los AWS Lambda
handlers
Integration tests
Load tests
Buenas practicas para
Desplegar
Sistemas Serverless
Infraestrutura como código
y desplegué automático
Variables de ambiente y
manejo de la configuración
Buenas practicas para
Monitorear
Sistemas Serverless
Cuándo saber que algo falla?
Dashboards
Soft limits
Niveles de logs
http://bit.ly/aws-uruguay
@mavi888uy

More Related Content

Similar to Octubre 2018 - AWS UG Montevideo - Intro a Serverless y buenas practicas

Extendiendo share point, project y office con el nuevo modelo de apps sps
Extendiendo share point, project y office con el nuevo modelo de apps spsExtendiendo share point, project y office con el nuevo modelo de apps sps
Extendiendo share point, project y office con el nuevo modelo de apps sps
Fabian Imaz
 
Introduccion a elastic beanstalk aws roadshow bogota mexico
Introduccion a elastic beanstalk   aws roadshow bogota mexicoIntroduccion a elastic beanstalk   aws roadshow bogota mexico
Introduccion a elastic beanstalk aws roadshow bogota mexico
Amazon Web Services LATAM
 

Similar to Octubre 2018 - AWS UG Montevideo - Intro a Serverless y buenas practicas (20)

Transformation Track AWS Cloud Experience Argentina - Despegando y Desarrolla...
Transformation Track AWS Cloud Experience Argentina - Despegando y Desarrolla...Transformation Track AWS Cloud Experience Argentina - Despegando y Desarrolla...
Transformation Track AWS Cloud Experience Argentina - Despegando y Desarrolla...
 
Comenzando con Arquitecturas sin servidores
Comenzando con Arquitecturas sin servidoresComenzando con Arquitecturas sin servidores
Comenzando con Arquitecturas sin servidores
 
Comenzando con Arquitecturas sin servidores
Comenzando con Arquitecturas sin servidoresComenzando con Arquitecturas sin servidores
Comenzando con Arquitecturas sin servidores
 
DevOps en AWS: acelarando el desarrollo de software con Developer Tools
DevOps en AWS: acelarando el desarrollo de software con Developer ToolsDevOps en AWS: acelarando el desarrollo de software con Developer Tools
DevOps en AWS: acelarando el desarrollo de software con Developer Tools
 
Comenzando con Arquitecturas sin servidores
Comenzando con Arquitecturas sin servidoresComenzando con Arquitecturas sin servidores
Comenzando con Arquitecturas sin servidores
 
DevOps en AWS, acelarando el desarrollo de software con Developer Tools
DevOps en AWS, acelarando el desarrollo de software con Developer ToolsDevOps en AWS, acelarando el desarrollo de software con Developer Tools
DevOps en AWS, acelarando el desarrollo de software con Developer Tools
 
Innovation Track AWS Cloud Experience Argentina - Nuevos Paradigmas de Arquit...
Innovation Track AWS Cloud Experience Argentina - Nuevos Paradigmas de Arquit...Innovation Track AWS Cloud Experience Argentina - Nuevos Paradigmas de Arquit...
Innovation Track AWS Cloud Experience Argentina - Nuevos Paradigmas de Arquit...
 
Construya APIs seguras y escalables
Construya APIs seguras y escalables Construya APIs seguras y escalables
Construya APIs seguras y escalables
 
Webinar: introduction to cloud computing
Webinar:  introduction to cloud computingWebinar:  introduction to cloud computing
Webinar: introduction to cloud computing
 
Introducción a Azure App Service - MUG Buenos Aires
Introducción a Azure App Service - MUG Buenos AiresIntroducción a Azure App Service - MUG Buenos Aires
Introducción a Azure App Service - MUG Buenos Aires
 
Migration Day - Migración de Microsoft a AWS
Migration Day - Migración de Microsoft a AWSMigration Day - Migración de Microsoft a AWS
Migration Day - Migración de Microsoft a AWS
 
WhyFLOSS - Como evitar caer cautivo de las Nubes Propietarias
WhyFLOSS - Como evitar caer cautivo de las Nubes PropietariasWhyFLOSS - Como evitar caer cautivo de las Nubes Propietarias
WhyFLOSS - Como evitar caer cautivo de las Nubes Propietarias
 
Mejores prácticas de CI / CD para construir aplicaciones modernas
Mejores prácticas de CI / CD para construir aplicaciones modernasMejores prácticas de CI / CD para construir aplicaciones modernas
Mejores prácticas de CI / CD para construir aplicaciones modernas
 
escenarios dsr.pptx
escenarios dsr.pptxescenarios dsr.pptx
escenarios dsr.pptx
 
Presentacion
PresentacionPresentacion
Presentacion
 
Comenzando con Aplicaciones Enterprise en AWS
Comenzando con Aplicaciones Enterprise en AWSComenzando con Aplicaciones Enterprise en AWS
Comenzando con Aplicaciones Enterprise en AWS
 
DevOps en AWS
DevOps en AWS DevOps en AWS
DevOps en AWS
 
Uso de Containers y Serverless para acelerar el desarrollo de aplicaciones mo...
Uso de Containers y Serverless para acelerar el desarrollo de aplicaciones mo...Uso de Containers y Serverless para acelerar el desarrollo de aplicaciones mo...
Uso de Containers y Serverless para acelerar el desarrollo de aplicaciones mo...
 
Extendiendo share point, project y office con el nuevo modelo de apps sps
Extendiendo share point, project y office con el nuevo modelo de apps spsExtendiendo share point, project y office con el nuevo modelo de apps sps
Extendiendo share point, project y office con el nuevo modelo de apps sps
 
Introduccion a elastic beanstalk aws roadshow bogota mexico
Introduccion a elastic beanstalk   aws roadshow bogota mexicoIntroduccion a elastic beanstalk   aws roadshow bogota mexico
Introduccion a elastic beanstalk aws roadshow bogota mexico
 

More from Marcia Villalba

20200520 - Como empezar a desarrollar aplicaciones serverless
20200520 - Como empezar a desarrollar aplicaciones serverless 20200520 - Como empezar a desarrollar aplicaciones serverless
20200520 - Como empezar a desarrollar aplicaciones serverless
Marcia Villalba
 

More from Marcia Villalba (18)

20210608 - Desarrollo de aplicaciones en la nube
20210608 - Desarrollo de aplicaciones en la nube20210608 - Desarrollo de aplicaciones en la nube
20210608 - Desarrollo de aplicaciones en la nube
 
20201012 - Serverless Architecture Conference - Deploying serverless applicat...
20201012 - Serverless Architecture Conference - Deploying serverless applicat...20201012 - Serverless Architecture Conference - Deploying serverless applicat...
20201012 - Serverless Architecture Conference - Deploying serverless applicat...
 
20201013 - Serverless Architecture Conference - How to migrate your existing ...
20201013 - Serverless Architecture Conference - How to migrate your existing ...20201013 - Serverless Architecture Conference - How to migrate your existing ...
20201013 - Serverless Architecture Conference - How to migrate your existing ...
 
20200803 - Serverless with AWS @ HELTECH
20200803 - Serverless with AWS @ HELTECH20200803 - Serverless with AWS @ HELTECH
20200803 - Serverless with AWS @ HELTECH
 
Building a personal brand
Building a personal brandBuilding a personal brand
Building a personal brand
 
20200522 - How to migrate an existing app to serverless
20200522 - How to migrate an existing app to serverless20200522 - How to migrate an existing app to serverless
20200522 - How to migrate an existing app to serverless
 
20200520 - Como empezar a desarrollar aplicaciones serverless
20200520 - Como empezar a desarrollar aplicaciones serverless 20200520 - Como empezar a desarrollar aplicaciones serverless
20200520 - Como empezar a desarrollar aplicaciones serverless
 
20200513 - CloudComputing UCU
20200513 - CloudComputing UCU20200513 - CloudComputing UCU
20200513 - CloudComputing UCU
 
20200513 Getting started with AWS Amplify
20200513   Getting started with AWS Amplify20200513   Getting started with AWS Amplify
20200513 Getting started with AWS Amplify
 
2020-04-02 DevConf - How to migrate an existing application to serverless
2020-04-02 DevConf - How to migrate an existing application to serverless2020-04-02 DevConf - How to migrate an existing application to serverless
2020-04-02 DevConf - How to migrate an existing application to serverless
 
JFokus 2020 - How to migrate an application to serverless
JFokus 2020 - How to migrate an application to serverlessJFokus 2020 - How to migrate an application to serverless
JFokus 2020 - How to migrate an application to serverless
 
Serverless <3 GraphQL - AWS UG Tampere 2020
Serverless <3 GraphQL - AWS UG Tampere 2020Serverless <3 GraphQL - AWS UG Tampere 2020
Serverless <3 GraphQL - AWS UG Tampere 2020
 
ReInvent 2019 reCap Nordics
ReInvent 2019 reCap NordicsReInvent 2019 reCap Nordics
ReInvent 2019 reCap Nordics
 
Serverless Days Milano - Developing Serverless applications with GraphQL
Serverless Days Milano - Developing Serverless applications with GraphQLServerless Days Milano - Developing Serverless applications with GraphQL
Serverless Days Milano - Developing Serverless applications with GraphQL
 
AWS Stockholm Summit 19- Building serverless applications with GraphQL
AWS Stockholm Summit 19- Building serverless applications with GraphQLAWS Stockholm Summit 19- Building serverless applications with GraphQL
AWS Stockholm Summit 19- Building serverless applications with GraphQL
 
Serverless <3 GraphQL | 2019 - Serverless Architecture Conference
Serverless <3 GraphQL | 2019 - Serverless Architecture ConferenceServerless <3 GraphQL | 2019 - Serverless Architecture Conference
Serverless <3 GraphQL | 2019 - Serverless Architecture Conference
 
Serverless Computing London 2018 - Migrating services to serverless in 10 steps
Serverless Computing London 2018 - Migrating services to serverless in 10 stepsServerless Computing London 2018 - Migrating services to serverless in 10 steps
Serverless Computing London 2018 - Migrating services to serverless in 10 steps
 
Serverless Empowering people
Serverless Empowering peopleServerless Empowering people
Serverless Empowering people
 

Octubre 2018 - AWS UG Montevideo - Intro a Serverless y buenas practicas