Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Mensageria com Microsserviços Estendida
Search
Lucas Santos
June 24, 2019
Programming
0
120
Mensageria com Microsserviços Estendida
Lucas Santos
June 24, 2019
Tweet
Share
More Decks by Lucas Santos
See All by Lucas Santos
The Hitchhiker's Guide for an Amazing API with TypeScript
khaosdoctor
0
81
Escalando globalmente com TypeScript e JavaScript na Klarna
khaosdoctor
0
180
The future of JavaScript
khaosdoctor
0
53
TypeScript tips that could save your life
khaosdoctor
0
170
É hora de falar sobre Deno
khaosdoctor
0
66
JS Software testing for beginners
khaosdoctor
0
59
Ambientes dinâmicos com GitHub Actions
khaosdoctor
0
36
The Dark Side of JavaScript
khaosdoctor
0
69
Integrating Containers Into JavaScript
khaosdoctor
0
54
Other Decks in Programming
See All in Programming
PHPのバージョンアップ時にも役立ったAST
matsuo_atsushi
0
230
苦しいTiDBへの移行を乗り越えて快適な運用を目指す
leveragestech
0
1.2k
変化の激しい時代における、こだわりのないエンジニアの強さ
satoshi256kbyte
0
110
Honoをフロントエンドで使う 3つのやり方
yusukebe
7
3.6k
Webフレームワークとともに利用するWeb components / JSConf.jp おかわり
spring_raining
1
140
メンテが命: PHPフレームワークのコンテナ化とアップグレード戦略
shunta27
0
320
Ça bouge du côté des animations CSS !
goetter
2
160
たのしいSocketのしくみ / Socket Under a Microscope
coe401_
8
1.4k
Jakarta EE meets AI
ivargrimstad
0
650
ソフトウェアエンジニアの成長
masuda220
PRO
12
2.2k
Domain-Driven Design (Tutorial)
hschwentner
13
22k
ナレッジイネイブリングにAIを活用してみる ゆるSRE勉強会 #9
nealle
0
170
Featured
See All Featured
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
115
51k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
4
380
Scaling GitHub
holman
459
140k
The Cult of Friendly URLs
andyhume
78
6.2k
Side Projects
sachag
452
42k
Faster Mobile Websites
deanohume
306
31k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Making the Leap to Tech Lead
cromwellryan
133
9.1k
Automating Front-end Workflow
addyosmani
1369
200k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Code Review Best Practice
trishagee
67
18k
Docker and Python
trallard
44
3.3k
Transcript
Mensageria com microsserviços
lead solutions architect_ /khaosdoctor @_staticvoid lsantos.dev @khaosdoctor quem sou eu_
ReST Representational State Transfer_ - Request -> Response - Comunicação
um a um - HTTP - "Assíncrono"
a Internet usa ReST
mas ele não escala
None
Messaging Oriented Architecture (MoA)
história_
P Broker C
O broker_
Integração de sistemas
protocolos Sim, tem mais de um - MQTT - XMPP
- DDS - AMQP
MQTT Message Queue Telemetry Transport - Leve - Flexibilidade de
QoS - Escolhido como padrão para mensageria - Simples e fácil de implementar
MQTT Message Queue Telemetry Transport - Alto consumo de recursos
devido ao TCP - Falta de criptografia
XMPP Extensible Messaging and Presence Protocol - Possui schema de
endereçamento - Client-server
XMPP Extensible Messaging and Presence Protocol - Sem criptografia -
Não existe QoS
DDS Data Distribution Service - PubSub simples - Flexível e
adaptável - Auto-discovery - Não usa muitos recursos - Determinístico na entrega de mensagens - Escalável dinamicamente - Eficiente
AMQP Advanced Message Queueing Protocol - TCP ou UDP -
Criptografia ponta a ponta
AMQP Advanced Message Queueing Protocol - Usa mais recursos
mensageria - Mais leve - Mais rápido - Binário -
Eventos
messaging patterns_
None
Worker Queues_
Producer / Consumer_
P Q C C
RPC Remote Procedure Call_
Request / Reply_
P CB_Q C RPC_Q replyTo: CB_Q correlationId: xpto replyTo: CB_Q
correlationId: xpto correlationId: xpto
Publisher / Subscriber_
P FX Q 2 C2 C1 Q 1
Routing
P DX Q 2 C2 C1 Q 1 Verde Azul
Topics
Topics - daredevil.error.log - daredevil.info.log - daredevil.warn.log - daredevil.message -
heimdall.error.log - heimdall.info.log - heimdall.warn.log - heimdall.message
Topics - daredevil.error.log - daredevil.info.log - daredevil.warn.log - daredevil.message -
heimdall.error.log - heimdall.info.log - heimdall.warn.log - heimdall.message origem.severidade.tipo
P DX Q 2 C2 C1 Q 1 daredevil.# *.error.*
Q 3 C3 heimdall.info.#
Topics - daredevil.error.log - daredevil.info.log - daredevil.warn.log - daredevil.message -
heimdall.error.log - heimdall.info.log - heimdall.warn.log - heimdall.message Q1 Q2 Q3
referências_ - blog.codeship.com/microservices-messaging-rest-isnt-al ways-best-choice - rabbitmq.com/tutorials/tutorial-two-javascript.html - rabbitmq.com/tutorials/tutorial-three-javascript.html - rabbitmq.com/tutorials/tutorial-four-javascript.html
- rabbitmq.com/tutorials/tutorial-five-javascript.html - rabbitmq.com/tutorials/tutorial-six-javascript.html - enterpriseintegrationpatterns.com/patterns/messaging - concrete.com.br/2012/01/23/introducao-a-mensageria
referências_ - imasters.com.br/devsecops/mensageria-nao-e-um-bicho- de-7-cabecas - dzone.com/articles/which-are-the-iot-messaging-protoco ls
/khaosdoctor @_staticvoid lsantos.dev @khaosdoctor obrigado_