usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka...
Transcript of usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka...
![Page 1: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/1.jpg)
http://s3wf.com
@jeffotoni
TDC ONLINE 2020 São Paulo 27/08
Jefferson Otoni
Escalando um App Go usando Serverless e Kafka
![Page 2: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/2.jpg)
![Page 3: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/3.jpg)
@jeffotoni
Fácil de implementar
Altamente escalável Resiliente
desafios
![Page 4: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/4.jpg)
arquitetura
@jeffotoni
Go Go Goc
o
mongo rethinkDB postgres
app
browsers
![Page 5: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/5.jpg)
nossa arquitetura
s3shop
@jeffotoni
![Page 6: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/6.jpg)
@jeffotoni
![Page 7: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/7.jpg)
@jeffotoni
![Page 8: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/8.jpg)
modelo 1
@jeffotoni
![Page 9: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/9.jpg)
1@jeffotoni
![Page 10: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/10.jpg)
1@jeffotoni
![Page 11: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/11.jpg)
meio Pagamento
Pub/Sub Cloud Function
Cloud Function
Cloud Function
Cloud Function
sucesso
@jeffotoni
![Page 12: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/12.jpg)
postgres
Pub/Sub
microservice
@jeffotoni
consumer
restrpc
write
![Page 13: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/13.jpg)
Pub/Sub
@jeffotoni
RabbitMQ
Sqs
kubemq.io
![Page 14: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/14.jpg)
@jeffotoni
consumer
![Page 15: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/15.jpg)
@jeffotoni
Cloud function
![Page 16: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/16.jpg)
@jeffotoni
Cloud function
![Page 17: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/17.jpg)
novo Cenário
@jeffotoni
![Page 18: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/18.jpg)
@jeffotoni
mongo rethinkDB
![Page 19: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/19.jpg)
postgresBigQuery
Redis
RethinkDB
mongo
nossos BDs
@jeffotoni
Spanner
![Page 20: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/20.jpg)
Solução 2
@jeffotoni
![Page 21: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/21.jpg)
@jeffotoni
![Page 22: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/22.jpg)
@jeffotoni
service service service
service service service
service service service
apache kafka
![Page 23: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/23.jpg)
Event Streams
@jeffotoni
possível solução
![Page 24: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/24.jpg)
@jeffotoni
possível solução
![Page 25: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/25.jpg)
@jeffotoni
possível solução
![Page 26: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/26.jpg)
@jeffotoni
possível solução
![Page 27: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/27.jpg)
@jeffotoni
Kafka producer
![Page 28: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/28.jpg)
@jeffotoni
Kafka consumer
![Page 29: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/29.jpg)
Por quê usar Go?
@jeffotoni
![Page 30: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/30.jpg)
@jeffotoni@jeffotoni
Ritchie
![Page 31: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/31.jpg)
@jeffotoni
25 Keywordsbreak default func interface select
case defer go map struct
chan else goto package switch
const fallthrough if range type
continue for import return var
![Page 32: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/32.jpg)
@jeffotoni
Goroutines
![Page 33: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/33.jpg)
@jeffotoni
Pprof Profiling Go
https://eltonminetto.dev/post/2020-04-08-golang-pprof
![Page 35: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/35.jpg)
@jeffotoni
Comunidade
Telegramhttps://t.me/go_brhttps://t.me/go_bhhttps://t.me/golangcwb
Slackhttps://gophers.slack.com(members >~45k)
GopherCon Brasil 2020 https://2020.gopherconbr.org
Wiki Conferenciashttps://github.com/golang/go/wiki/Conferences
Meetuphttps://www.meetup.com/go-belo-horizontehttps://www.meetup.com/pt-BR/golangbrhttps://www.meetup.com/pt-BR/Women-Who-Go-Sampahttps://www.meetup.com/pt-BR/Golang-Campinas/https://www.meetup.com/pt-BR/golang-poa/https://www.meetup.com/pt-BR/GolangCWB/
![Page 36: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/36.jpg)
@jeffotoni
Paradigma concorrente
Compiladaestaticamente
Tipagemestática
Multi Plataformas
Retrocompa-tibilidade
![Page 37: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/37.jpg)
@jeffotoni
https://golang.org https://golang.org/doc/effective_go.htmlhttps://golang.org/ref/spec
https://golang.org/dochttps://tour.golang.org/welcome/1
![Page 38: usando 2020 Serverless e Kafka...2020/08/27 · Escalando um App Go usando Serverless e Kafka @jeffotoni Fácil de implementar Altamente escalável Resiliente desafios arquitetura](https://reader035.fdocuments.us/reader035/viewer/2022071605/61416cf7a2f84929c30461af/html5/thumbnails/38.jpg)
Thanks := &Obrigado{...}
Obrigado...
github.com/jeffotoni
instagram.com/jeffotoni
https://t.me/devopsbh
https://t.me/go_br
https://t.me/awsbrasil
linkedin.com/in/jeffotoni/