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
130
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
89
Escalando globalmente com TypeScript e JavaScript na Klarna
khaosdoctor
0
190
The future of JavaScript
khaosdoctor
0
59
TypeScript tips that could save your life
khaosdoctor
0
210
É hora de falar sobre Deno
khaosdoctor
0
73
JS Software testing for beginners
khaosdoctor
0
76
Ambientes dinâmicos com GitHub Actions
khaosdoctor
0
40
The Dark Side of JavaScript
khaosdoctor
0
74
Integrating Containers Into JavaScript
khaosdoctor
0
65
Other Decks in Programming
See All in Programming
CSC305 Lecture 13
javiergs
PRO
0
350
三者三様 宣言的UI
kkagurazaka
0
340
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
510
AsyncSequenceとAsyncStreamのプロポーザルを全部読む!!
s_shimotori
1
230
Inside of Swift Export
giginet
PRO
1
330
CSC305 Lecture 14
javiergs
PRO
0
220
AIのバカさ加減に怒る前にやっておくこと
blueeventhorizon
0
140
なんでRustの環境構築してないのにRust製のツールが動くの? / Why Do Rust-Based Tools Run Without a Rust Environment?
ssssota
14
47k
フロントエンド開発のためのブラウザ組み込みAI入門
masashi
7
3.7k
CSC509 Lecture 11
javiergs
PRO
0
290
ALL CODE BASE ARE BELONG TO STUDY
uzulla
30
6.9k
Kotlin 2.2が切り拓く: コンテキストパラメータで書く関数型DSLと新しい依存管理のかたち
knih
0
280
Featured
See All Featured
How to train your dragon (web standard)
notwaldorf
97
6.3k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
Git: the NoSQL Database
bkeepers
PRO
431
66k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Designing Experiences People Love
moore
142
24k
It's Worth the Effort
3n
187
28k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Documentation Writing (for coders)
carmenintech
76
5.1k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
A Modern Web Designer's Workflow
chriscoyier
697
190k
Site-Speed That Sticks
csswizardry
13
940
BBQ
matthewcrist
89
9.9k
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_