Serverless: Um novo paradigma de arquitetura de aplicações - Exemplos com Firebase e Google Cloud...

Preview:

Citation preview

Proprietary + Confidential

ServerlessUm novo paradigma de arquitetura de aplicações:Exemplos com Firebase e Google Cloud Functions

José PapoGerente de relações com startups e developersGoogle América Latina@josepapo

Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem

"The Future is going to be Serverless" - Jeremy Edberg, former Chief Reliability Architect - Netflix

Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem

Serverless 1: Backend as a Service (BaaS)

Bancos de dados, serviços de autenticação, analytics e outros acessíveis diretamente via APIs

Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem

Firebase - Arquitetura

Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem

Firebase - Sample Code

Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem

Serverless 2: Function as a Service (FaaS)

Lógica server-side disparada por eventos e que executa em containers stateless gerenciados por um terceiro (provedor do serviço de FaaS)

Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem

Google Cloud Functions

Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem

Google Cloud Functions - Arquitetura

Cloud servicesemit "events"

1Your Functions

respond to events

2

Functions can write back to the cloud Or call other APIs

3

Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem

Google Cloud Functions - Sample Code

Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem

Google Cloud Functions - Deploy

Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem

DevOps, NoOps e Fully Managed

Movimento em busca de automação de produção de software e redução(ou eliminação) da necessidade de tarefas operacionais e recursos computacionais visíveis

Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem

Cloud Pub/Sub Machine Learning

Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem

BaaS e FaaS - Vantagens

● Custos de escalabilidade reduzidos (paga somente por tempo de execução e memória alocada para a função ou quantidade de operações e armazenamento)

● Custos operacionais reduzidos ou gratuitos

● Custos de desenvolvimento reduzidos

http://martinfowler.com/articles/serverless.html

Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem

BaaS e Faas - Desvantagens

● Lock-in de provedores Cloud (mitigação através de frameworks open source como Serverless Framework*)

● Repetição de lógica nas camadas cliente, no caso de BaaS

● Sempre 'stateless'

*https://github.com/serverless/serverless

Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem

Como Serverless é diferente de containers?

Containers ainda são "pesados" operacionalmente se comparados com Serverless. Você precisa de soluções de gestão como Kubernetes ou Docker Swarm. Porém, containers são mais portáveis

Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem

Usando FaaS como serviços HTTP

http://microservices.io/patterns/apigateway.html

Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem

Padrões arquiteturais FaaS - BaaS + FaaS + API Gateway

http://martinfowler.com/articles/serverless.html

Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem

Padrões arquiteturais FaaS - Nanoservices

http://justserverless.com/blog/nanoservices-microservices-monolith-serverless-architectures-by-example/

Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem

Padrões arquiteturais FaaS - Microservices

http://justserverless.com/blog/nanoservices-microservices-monolith-serverless-architectures-by-example/

Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem

Padrões arquiteturais FaaS - Monolith

http://justserverless.com/blog/nanoservices-microservices-monolith-serverless-architectures-by-example/

Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem

Padrões arquiteturais FaaS - Event-driven pipelines

https://cloud.google.com/functions/docs/tutorials/ocr

g.co/firebase/preso

cloud.google.com/functions

g.co/codelabs/preso

Firebase Codelabs

https://goo.gl/uZFSyz

Google Cloud Functions OCR Tutorial

OBRIGADO!!!slideshare.net/jpapo

José Papo @josepapo

Recommended