SlideShare a Scribd company logo
1 of 47
Download to read offline
I N P U R S U I T O F M E S S A G I N G
B R O K E R ( S )
D AV I D G E V O R K YA N
@ d a v i d g e v
d a v i d g e v o r k y a n
P R I M A RY G O A L
• S TA B L E
• A C T I V E & H A S P R O P E R S U P P O RT
• S AT I S F I E S P E R F O R M A N C E R E Q U I R E M E N T S
• O U R P E A K L O A D P E R N O D E 1 0 0 0 M S G / S E C ,
6 0 M L N / D AY
• M U S M E S S A G E S I Z E ~ 4 K B
• S I N G L E S P S M E S S A G E S I Z E ~ 2 . 2 K B
• M D S M E S S A G E S I Z E ~ 6 1 5 K B
• B E T T E R T H A N
2 1 PA RT I C I PA N T S
7 F E AT U R E S E A C H
V E RY I M P O RTA N T F E AT U R E S
• H I G H AVA I L A B I L I T Y / R E P L I C AT I O N
• P E R S I S T E N C E / D U R A B I L I T Y
• D E V E L O P E R F R I E N D LY
• B R O K E R E D
• G U A R A N T E E D D E L I V E RY & D E L I V E RY
A C K N O W L E D G E M E N T S
• E A S Y T O C O N F I G U R E
• S TA B L E E N O U G H F O R P R O D U C T I O N
• M E T R I C E X P O S U R E
V O T E D B Y AT L E A S T 3 0 %
L E S S I M P O RTA N T F E AT U R E S
• M A N A G E M E N T U I
• H A D O O P E C O S Y S T E M
• O P E N S O U R C E
• W E B S O C K E T S U P P O RT
• I T E M E X P I R AT I O N
• O P E R AT I O N S F R I E N D LY
• VA R I E T Y O F D R I V E R S U P P O RT
• J M S C O M P L I A N T
• A C T I V E D E V E L O P M E N T / C U T T I N G E D G E
V O T E D B Y AT L E A S T 5 %
N O T I M P O RTA N T F E AT U R E S
• B R O K E R L E S S ( P E E R - T O - P E E R )
• G U A R A N T E E D O R D E R O F D E L I V E RY
• T R A C I N G
• D E A D L E T T E R E X C H A N G E S U P P O RT
• V I RT U A L I Z AT I O N F R I E N D LY
V O T E D B Y L E S S T H A N 5 %
a f t e r c o n s i d e r i n g “ Ve r y I m p o r t a n t F e a t u re s ”
N O 	
   O F F I C I A L 	
  
JAVA 	
   D R I V E R
N O 	
   O F F I C I A L 	
  
JAVA 	
   D R I V E R
R I S K 	
   O F 	
   B E I N G 	
  
R E P L AC E D 	
   BY 	
   A P O L LO
R A B B I T M Q I S A N E F F I C I E N T, H I G H LY
S C A L A B L E , A N D E A S Y- T O - D E P L O Y
Q U E U I N G S Y S T E M T H AT M A K E S
H A N D L I N G M E S S A G E T R A F F I C
V I RT U A L LY E F F O RT L E S S
Source: http://stackshare.io and others
K A F K A I S A D I S T R I B U T E D ,
PA RT I T I O N E D , R E P L I C AT E D C O M M I T
L O G S E R V I C E . I T P R O V I D E S T H E
F U N C T I O N A L I T Y O F A M E S S A G I N G
S Y S T E M , W I T H A U N I Q U E D E S I G N
Source: http://stackshare.io and others
B E N C H M A R K . I O
R O C K E T L A U N C H E R
B E N C H M A R K S C A N P R E D I C T L O A D U N D E R
C E RTA I N C O N D I T I O N S , B U T A R E FA R F R O M
B E I N G P E R F E C T.
T H E R E A L P R E D I C T O R I S R U N N I N G I N
S H A D O W M O D E
M A C H I N E D E TA I L S
r3.2xlarge - Optimized for memory-intensive applications
8 cores - Intel Xeon E5-2670 v2 (Ivy Bridge) Processors
61GB of RAM
160GB SSD Memory
Ubuntu: 14.04 64bit AMD
Java: 1.7.0_79 64bit
RabbitMQ: 3.5.2
Apache Kafka: 2.9.2-0.8.2.1
1 P / 1 C / 1 K B / T O P I C
P R O D U C E RTHROUGHPUT/
SECOND
0
30,000
60,000
90,000
120,000
1 2 3
RabbitMQ Guaranteed Delivery
Kafka No Guarantees On Delivery
Kafka Guaranteed Delivery
C O N S U M E R
THROUGHPUT/
SECOND
0
15,000
30,000
45,000
60,000
1 2 3
RabbitMQ Guaranteed Delivery
Kafka No Guarantees On Delivery
Kafka Guaranteed Delivery
1 P / 1 C / 4 K B / T O P I C
P R O D U C E RTHROUGHPUT/
SECOND
0
15,000
30,000
45,000
60,000
1 2 3
RabbitMQ Guaranteed Delivery
Kafka No Guarantees On Delivery
Kafka Guaranteed Delivery
C O N S U M E R
THROUGHPUT/
SECOND
0
10,000
20,000
30,000
40,000
1 2 3
RabbitMQ Guaranteed Delivery
Kafka No Guarantees On Delivery
Kafka Guaranteed Delivery
1 P / 1 C / 1 0 0 K B / T O P I C
P R O D U C E RTHROUGHPUT/
SECOND
0
2,500
5,000
7,500
10,000
1 2 3
RabbitMQ Guaranteed Delivery
Kafka No Guarantees On Delivery
Kafka Guaranteed Delivery
C O N S U M E R
THROUGHPUT/
SECOND
0
2,250
4,500
6,750
9,000
1 2 3
RabbitMQ Guaranteed Delivery
Kafka No Guarantees On Delivery
Kafka Guaranteed Delivery
1 P / 0 C / 4 K B / T O P I C
P R O D U C E R
THROUGHPUT/
SECOND
0
15,000
30,000
45,000
60,000
1 2 3
RabbitMQ Guaranteed Delivery
Kafka No Guarantees On Delivery
Kafka Guaranteed Delivery
L O A D
0 P / 1 C / 4 K B / T O P I C
C O N S U M E R
THROUGHPUT/
SECOND
0
35,000
70,000
1 2 3
RabbitMQ Guaranteed Delivery
Kafka No Guarantees On Delivery
Kafka Guaranteed Delivery
U N L O A D
5 P / 5 C / 4 K B / T O P I C
P R O D U C E RTHROUGHPUT/
SECOND
0
4,750
9,500
14,250
19,000
1 2 3
RabbitMQ Guaranteed Delivery
Kafka Guaranteed Delivery (1 partition)
Kafka Guaranteed Delivery (5 partitions)
RabbitMQ Guaranteed Delivery (Durable)
C O N S U M E R
THROUGHPUT/
SECOND
0
4,000
8,000
12,000
16,000
1 2 3
RabbitMQ Guaranteed Delivery
Kafka Guaranteed Delivery (1 partition)
Kafka Guaranteed Delivery (5 partitions)
RabbitMQ Guaranteed Delivery (Durable)
5 P / 5 C / 4 K B / T O P I C
P R O D U C E RTHROUGHPUT/
SECOND
0
40,000
80,000
120,000
160,000
1 2 3
RabbitMQ Guaranteed Delivery
Kafka No Guarantees On Delivery
C O N S U M E R
THROUGHPUT/
SECOND
0
15,000
30,000
45,000
60,000
1 2 3
RabbitMQ Guaranteed Delivery
Kafka No Guarantees On Delivery
L AT E N C Y F O R B O T H
M E A N < 1 M S
M A X < 4 0 M S
S T R E N G T H S
• R E A L LY N I C E D E S I G N F O R L O G S H I P P I N G , E . G . I F Y O U WA N T T O
W R I T E A V O L AT I L E E V E N T F I R E H O S E T O D I S K , A N D N E E D
' E L A S T I C ' C O N S U M P T I O N
• I M P L E M E N T S B U L K I N G A N D B U F F E R I N G ( W H E N W R I T I N G T O D I S K )
H E N C E R E A L LY P E R F O R M A N T
• VA R I E T Y O F T E C H N O L O G Y I N T E G R AT I O N S I N H A D O O P
E C O S Y S T E M , S P E C I F I C A L LY F O R S T R E A M P R O C E S S I N G
W E A K N E S S E S
• N O T B U I LT F O R U S E I N T R A N S A C T I O N A L S I T U AT I O N S
• W E A K D E L I V E RY G U A R A N T E E S
• A M AT E U R C O N S U M E R A N D P R O D U C E R C O D E I M P L E M E N TAT I O N S
• D O E S N ' T H AV E M E S S A G E A C K N O W L E D G E M E N T S B E T W E E N
B R O K E R - > C O N S U M E R
• E X T R A C O M P L E X I T Y B E C A U S E O F Z O O K E E P E R ( B A D R E C O V E RY
W H E N E I T H E R T H E Z O O K E E P E R O R B R O K E R D I E )
• E X P E R I E N C E D B Y E L E VAT E D T E A M
• D O E S N ’ T H AV E A N O T I O N O F N O N - P E R S I S T E N T Q U E U E / T O P I C
• V E RY C L O S E T I E B E T W E E N C O N S U M E R C O U N T S A N D PA RT I T I O N S
( I F L E S S C O N S U M E R S T H A N PA RT I T I O N S , S O M E C O N S U M E R S W I L L
D O N O T H I N G )
• L O G C L E A N E R N E E D S T U N I N G , O T H E R W I S E Y O U Q U I C K LY R U N
O U T O F S PA C E
• D O E S N ’ T P E R F O R M W E L L F O R L A R G E M E S S A G E S
• N E E D T O B U Y S U P P O RT
• R O U T I N G N O T I O N S A R E N O T S U P P O RT E D
• L E A R N I N G C U R V E I S S T E E P
S T R E N G T H S
• E A S Y T O S E T U P W I T H V I RT U A L LY N O I N T E R V E N T I O N ( I T J U S T
W O R K S )
• I M P L E M E N T S P R O P E R D E L I V E RY G U A R A N T E E S
• C O M P R E H E N S I V E D O C U M E N TAT I O N ( A N Y T H I N G I WA N T E D T O
F I N D WA S AT M Y F I N G E RT I P )
• M AT U R E P R O D U C T
• P R O V I D E S A VA R I E T Y O F M E S S A G E R O U T I N G C A PA B I L I T I E S
( E X C H A N G E , B I N D I N G A N D Q U E U I N G M O D E L )
• VA R I E T Y O F L A R G E C O M PA N I E S U S E I T A S A M E S S A G E B U S
• E A S Y M I G R AT I O N F R O M E X I S T I N G J M S C O M P L I A N T S Y S T E M S
• AVA I L A B I L I T Y O F C H E F C O O K B O O K
• S U P P O RT S N O T I O N O F R O U T I N G E X C H A N G E S
• R A B B I T M Q A S A S E R V I C E : H T T P : / / W W W. C L O U D A M Q P. C O M /
W E A K N E S S E S
• M A X I M U M O U T O F T H E B O X T H R O U G H P U T I S 5 0 K / S E C
( A LT H O U G H I T I S FA I R T O M E N T I O N T H AT L A R G E I N S TA L L AT I O N S ,
U P T O 1 . 3 M L N / S E C E X I S T )
R E C O M M E N D AT I O N
• U S E R A B B I T M Q A S A S T R A I G H T R E P L A C E M E N T F O R O U R C U R R E N T
H O R N E T Q I N S TA L L AT I O N
• E A S E O F S E T U P
• S I M P L I C I T Y O F M I G R AT I O N
• S U P P O RT O F R O U T I N G C A PA B I L I T I E S A N D J M S C O M P L I A N C Y
• M E E T S O U R P E R F O R M A N C E R E Q U I R E M E N T S
• G R E AT D O C U M E N TAT I O N A N D C O M M U N I T Y S U P P O RT
• P R O F E S S I O N A L S U P P O RT I S AVA I L A B L E F R O M P I V O TA L
• U S E K A F K A F O R L O G P R O C E S S I N G C A S E S T H AT R E Q U I R E N O
G U A R A N T E E S O N D E L I V E RY
• G O O D F O R S T R E A M P R O C E S S I N G
• G O O D F O R M E T R I C S L O A D I N G A N D P R O C E S S I N G
• L O G D E L I V E RY A N D P R O C E S S I N G
• E X C E P T I O N T R A C K I N G
• F R A U D A N A LY S I S
• H O RT O N W O R K S C E RT I F I E D K A F K A D I S T R I B U T I O N I S AVA I L A B L E
1 P / 1 C / 1 K B / Q U E U E
N O N P E R S I S T E N T
1 P / 1 C / 1 K B / Q U E U E
P E R S I S T E N T
sample missing
not an issue
1 P / 1 C / 1 K B / T O P I C
N O N P E R S I S T E N T
hornetq-2.2.5
rabbitmq-2.7.0
3 . 5 . 2 	
   I S 	
   M U C H 	
  
FA S T E R
hornetq-2.2.5
rabbitmq-2.7.0
3 . 5 . 2 	
   I S 	
   M U C H 	
  
FA S T E R
5 P / 5 C / 1 K B / T O P I C
P E R S I S T E N T
5 P / 5 C / 2 5 6 K B / T O P I C
P E R S I S T E N T
R E F E R E N C E S
• h t t p : / / w w w. r a b b i t m q . c o m / b l o g / 2 0 1 2 / 0 4 / 2 5 / r a b b i t m q -
p e r f o r m a n c e - m e a s u re m e n t s - p a r t - 2 /
• h t t p : / / h i r a m c h i r i n o . c o m / s t o m p - b e n c h m a r k / e c 2 - c 1 . x l a rg e /
i n d e x . h t m l
• h t t p s : / / e n g i n e e r i n g . l i n k e d i n . c o m / k a f k a / b e n c h m a r k i n g -
a p a c h e - k a f k a - 2 - m i l l i o n - w r i t e s - s e c o n d - t h re e - c h e a p -
m a c h i n e s
• h t t p : / / b l o g . p i v o t a l . i o / p i v o t a l / p ro d u c t s / r a b b i t m q - h i t s - o n e -
m i l l i o n - m e s s a g e s - p e r- s e c o n d - o n - g o o g l e - c o m p u t e - e n g i n e
T H A N K Y O U
Q U E S T I O N S ?
C R E D I T S :
The Noun Project
http://thenounproject.com
Visual Elements From

More Related Content

What's hot

Async Code Reviews Are Killing Your Company’s Throughput - Dragan Stepanović
Async Code Reviews Are Killing Your Company’s Throughput - Dragan StepanovićAsync Code Reviews Are Killing Your Company’s Throughput - Dragan Stepanović
Async Code Reviews Are Killing Your Company’s Throughput - Dragan Stepanović
Dragan Stepanović
 

What's hot (20)

Montreal Girl Geeks: Building the Modern Web
Montreal Girl Geeks: Building the Modern WebMontreal Girl Geeks: Building the Modern Web
Montreal Girl Geeks: Building the Modern Web
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
Async Code Reviews Are Killing Your Company’s Throughput - Dragan Stepanović
Async Code Reviews Are Killing Your Company’s Throughput - Dragan StepanovićAsync Code Reviews Are Killing Your Company’s Throughput - Dragan Stepanović
Async Code Reviews Are Killing Your Company’s Throughput - Dragan Stepanović
 
Forging Trusts for Deception in Active Directory
Forging Trusts for Deception in Active DirectoryForging Trusts for Deception in Active Directory
Forging Trusts for Deception in Active Directory
 
Defending Your "Gold"
Defending Your "Gold"Defending Your "Gold"
Defending Your "Gold"
 
BitCoin, P2P, Distributed Computing
BitCoin, P2P, Distributed ComputingBitCoin, P2P, Distributed Computing
BitCoin, P2P, Distributed Computing
 
Git을 조금 더 알아보자!
Git을 조금 더 알아보자!Git을 조금 더 알아보자!
Git을 조금 더 알아보자!
 
How I become Go GDE
How I become Go GDEHow I become Go GDE
How I become Go GDE
 
Introduction to Apache Accumulo
Introduction to Apache AccumuloIntroduction to Apache Accumulo
Introduction to Apache Accumulo
 
CTO vs. VP of Engineering
CTO vs. VP of EngineeringCTO vs. VP of Engineering
CTO vs. VP of Engineering
 
A Rusty introduction to Apache Arrow and how it applies to a time series dat...
A Rusty introduction to Apache Arrow and how it applies to a  time series dat...A Rusty introduction to Apache Arrow and how it applies to a  time series dat...
A Rusty introduction to Apache Arrow and how it applies to a time series dat...
 
OSINT: Open Source Intelligence gathering
OSINT: Open Source Intelligence gatheringOSINT: Open Source Intelligence gathering
OSINT: Open Source Intelligence gathering
 
How to Build an App with ChatGPT.pdf
How to Build an App with ChatGPT.pdfHow to Build an App with ChatGPT.pdf
How to Build an App with ChatGPT.pdf
 
A Look into the Mirror: Patterns and Best Practices for MirrorMaker2 | Cliff ...
A Look into the Mirror: Patterns and Best Practices for MirrorMaker2 | Cliff ...A Look into the Mirror: Patterns and Best Practices for MirrorMaker2 | Cliff ...
A Look into the Mirror: Patterns and Best Practices for MirrorMaker2 | Cliff ...
 
Go Big on Community Management!
Go Big on Community Management!Go Big on Community Management!
Go Big on Community Management!
 
AI-powered tools for Creatives
AI-powered tools for CreativesAI-powered tools for Creatives
AI-powered tools for Creatives
 
[DSC Europe 23] Spela Poklukar & Tea Brasanac - Retrieval Augmented Generation
[DSC Europe 23] Spela Poklukar & Tea Brasanac - Retrieval Augmented Generation[DSC Europe 23] Spela Poklukar & Tea Brasanac - Retrieval Augmented Generation
[DSC Europe 23] Spela Poklukar & Tea Brasanac - Retrieval Augmented Generation
 
Be a Great Product Leader (Zynga 2016)
Be a Great Product Leader (Zynga 2016)Be a Great Product Leader (Zynga 2016)
Be a Great Product Leader (Zynga 2016)
 
The future of AI is hybrid
The future of AI is hybridThe future of AI is hybrid
The future of AI is hybrid
 
Netflix SRE perf meetup_slides
Netflix SRE perf meetup_slidesNetflix SRE perf meetup_slides
Netflix SRE perf meetup_slides
 

Viewers also liked

Build Golang projects properly with Makefiles
Build Golang projects properly with MakefilesBuild Golang projects properly with Makefiles
Build Golang projects properly with Makefiles
Raül Pérez
 

Viewers also liked (20)

The Current Messaging Landscape: RabbitMQ, ZeroMQ, nsq, Kafka
The Current Messaging Landscape: RabbitMQ, ZeroMQ, nsq, KafkaThe Current Messaging Landscape: RabbitMQ, ZeroMQ, nsq, Kafka
The Current Messaging Landscape: RabbitMQ, ZeroMQ, nsq, Kafka
 
AUA Data Science Meetup
AUA Data Science MeetupAUA Data Science Meetup
AUA Data Science Meetup
 
NATS - A new nervous system for distributed cloud platforms
NATS - A new nervous system for distributed cloud platformsNATS - A new nervous system for distributed cloud platforms
NATS - A new nervous system for distributed cloud platforms
 
1005 cern-active mq-v2
1005 cern-active mq-v21005 cern-active mq-v2
1005 cern-active mq-v2
 
The House That Twitters
The House That TwittersThe House That Twitters
The House That Twitters
 
Letters from the Trenches: Lessons Learned Taking MongoDB to Production
Letters from the Trenches: Lessons Learned Taking MongoDB to ProductionLetters from the Trenches: Lessons Learned Taking MongoDB to Production
Letters from the Trenches: Lessons Learned Taking MongoDB to Production
 
Intel Mashery API Management Solution
Intel Mashery API Management SolutionIntel Mashery API Management Solution
Intel Mashery API Management Solution
 
High Performance Systems in Go - GopherCon 2014
High Performance Systems in Go - GopherCon 2014High Performance Systems in Go - GopherCon 2014
High Performance Systems in Go - GopherCon 2014
 
Wargaming web
Wargaming webWargaming web
Wargaming web
 
Nats in action a real time microservices architecture handled by nats
Nats in action   a real time microservices architecture handled by natsNats in action   a real time microservices architecture handled by nats
Nats in action a real time microservices architecture handled by nats
 
Build Golang projects properly with Makefiles
Build Golang projects properly with MakefilesBuild Golang projects properly with Makefiles
Build Golang projects properly with Makefiles
 
Introduction to ActiveMQ Apollo
Introduction to ActiveMQ ApolloIntroduction to ActiveMQ Apollo
Introduction to ActiveMQ Apollo
 
Design Patterns for working with Fast Data in Kafka
Design Patterns for working with Fast Data in KafkaDesign Patterns for working with Fast Data in Kafka
Design Patterns for working with Fast Data in Kafka
 
Something about Kafka - Why Kafka is so fast
Something about Kafka - Why Kafka is so fastSomething about Kafka - Why Kafka is so fast
Something about Kafka - Why Kafka is so fast
 
Messaging With ActiveMQ
Messaging With ActiveMQMessaging With ActiveMQ
Messaging With ActiveMQ
 
Go Reactive: Event-Driven, Scalable, Resilient & Responsive Systems
Go Reactive: Event-Driven, Scalable, Resilient & Responsive SystemsGo Reactive: Event-Driven, Scalable, Resilient & Responsive Systems
Go Reactive: Event-Driven, Scalable, Resilient & Responsive Systems
 
Reactive Streams: Handling Data-Flow the Reactive Way
Reactive Streams: Handling Data-Flow the Reactive WayReactive Streams: Handling Data-Flow the Reactive Way
Reactive Streams: Handling Data-Flow the Reactive Way
 
Kafka as Message Broker
Kafka as Message BrokerKafka as Message Broker
Kafka as Message Broker
 
The Zen of High Performance Messaging with NATS
The Zen of High Performance Messaging with NATSThe Zen of High Performance Messaging with NATS
The Zen of High Performance Messaging with NATS
 
Apache kafka
Apache kafkaApache kafka
Apache kafka
 

Similar to In pursuit of messaging broker(s)

Ninja Correlation of APT Binaries
Ninja Correlation of APT BinariesNinja Correlation of APT Binaries
Ninja Correlation of APT Binaries
CODE BLUE
 
Codecademy Live QA Presentation
Codecademy Live QA PresentationCodecademy Live QA Presentation
Codecademy Live QA Presentation
James Kim
 
M|SOURCE WORK ORDER SYSTEM
M|SOURCE WORK ORDER SYSTEMM|SOURCE WORK ORDER SYSTEM
M|SOURCE WORK ORDER SYSTEM
Scott Urich
 

Similar to In pursuit of messaging broker(s) (20)

Blue Moon - Advertising Plan (Group Project)
Blue Moon - Advertising Plan (Group Project)Blue Moon - Advertising Plan (Group Project)
Blue Moon - Advertising Plan (Group Project)
 
Upgrading OpenStack? Avoid these 3 Common Pitfalls
Upgrading OpenStack? Avoid these 3 Common PitfallsUpgrading OpenStack? Avoid these 3 Common Pitfalls
Upgrading OpenStack? Avoid these 3 Common Pitfalls
 
Manejo de redes
Manejo de redesManejo de redes
Manejo de redes
 
Firefox OS Bus India Tour
Firefox OS Bus India TourFirefox OS Bus India Tour
Firefox OS Bus India Tour
 
C-Suite Guide to Cybersecurity
C-Suite Guide to CybersecurityC-Suite Guide to Cybersecurity
C-Suite Guide to Cybersecurity
 
Conventions of a thriller
Conventions of a thrillerConventions of a thriller
Conventions of a thriller
 
Altmetrics in UMCG: pilot project 2016
Altmetrics in UMCG: pilot project 2016Altmetrics in UMCG: pilot project 2016
Altmetrics in UMCG: pilot project 2016
 
Packaging Trends
Packaging TrendsPackaging Trends
Packaging Trends
 
Interactive media : information and libraries (#bobcatsss2017)
Interactive media : information and libraries (#bobcatsss2017)Interactive media : information and libraries (#bobcatsss2017)
Interactive media : information and libraries (#bobcatsss2017)
 
American Marketing Association - Strategy Presentation
American Marketing Association - Strategy Presentation American Marketing Association - Strategy Presentation
American Marketing Association - Strategy Presentation
 
Hard to Reach Users in Easy to Reach Places
Hard to Reach Users in Easy to Reach PlacesHard to Reach Users in Easy to Reach Places
Hard to Reach Users in Easy to Reach Places
 
PEACE EDUCATION (PEACE THEME 5)
PEACE EDUCATION (PEACE THEME 5)PEACE EDUCATION (PEACE THEME 5)
PEACE EDUCATION (PEACE THEME 5)
 
Ninja Correlation of APT Binaries
Ninja Correlation of APT BinariesNinja Correlation of APT Binaries
Ninja Correlation of APT Binaries
 
Robotics
RoboticsRobotics
Robotics
 
Mapan
MapanMapan
Mapan
 
Codecademy Live QA Presentation
Codecademy Live QA PresentationCodecademy Live QA Presentation
Codecademy Live QA Presentation
 
Metodologia simulacro
Metodologia simulacroMetodologia simulacro
Metodologia simulacro
 
Occ Cinque Terre
Occ Cinque TerreOcc Cinque Terre
Occ Cinque Terre
 
Building Legends at One World Observatory
Building Legends at One World ObservatoryBuilding Legends at One World Observatory
Building Legends at One World Observatory
 
M|SOURCE WORK ORDER SYSTEM
M|SOURCE WORK ORDER SYSTEMM|SOURCE WORK ORDER SYSTEM
M|SOURCE WORK ORDER SYSTEM
 

Recently uploaded

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Recently uploaded (20)

Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 

In pursuit of messaging broker(s)

  • 1. I N P U R S U I T O F M E S S A G I N G B R O K E R ( S )
  • 2. D AV I D G E V O R K YA N @ d a v i d g e v d a v i d g e v o r k y a n
  • 3. P R I M A RY G O A L • S TA B L E • A C T I V E & H A S P R O P E R S U P P O RT • S AT I S F I E S P E R F O R M A N C E R E Q U I R E M E N T S • O U R P E A K L O A D P E R N O D E 1 0 0 0 M S G / S E C , 6 0 M L N / D AY • M U S M E S S A G E S I Z E ~ 4 K B • S I N G L E S P S M E S S A G E S I Z E ~ 2 . 2 K B • M D S M E S S A G E S I Z E ~ 6 1 5 K B • B E T T E R T H A N
  • 4.
  • 5.
  • 6. 2 1 PA RT I C I PA N T S 7 F E AT U R E S E A C H
  • 7. V E RY I M P O RTA N T F E AT U R E S • H I G H AVA I L A B I L I T Y / R E P L I C AT I O N • P E R S I S T E N C E / D U R A B I L I T Y • D E V E L O P E R F R I E N D LY • B R O K E R E D • G U A R A N T E E D D E L I V E RY & D E L I V E RY A C K N O W L E D G E M E N T S • E A S Y T O C O N F I G U R E • S TA B L E E N O U G H F O R P R O D U C T I O N • M E T R I C E X P O S U R E V O T E D B Y AT L E A S T 3 0 %
  • 8. L E S S I M P O RTA N T F E AT U R E S • M A N A G E M E N T U I • H A D O O P E C O S Y S T E M • O P E N S O U R C E • W E B S O C K E T S U P P O RT • I T E M E X P I R AT I O N • O P E R AT I O N S F R I E N D LY • VA R I E T Y O F D R I V E R S U P P O RT • J M S C O M P L I A N T • A C T I V E D E V E L O P M E N T / C U T T I N G E D G E V O T E D B Y AT L E A S T 5 %
  • 9. N O T I M P O RTA N T F E AT U R E S • B R O K E R L E S S ( P E E R - T O - P E E R ) • G U A R A N T E E D O R D E R O F D E L I V E RY • T R A C I N G • D E A D L E T T E R E X C H A N G E S U P P O RT • V I RT U A L I Z AT I O N F R I E N D LY V O T E D B Y L E S S T H A N 5 %
  • 10. a f t e r c o n s i d e r i n g “ Ve r y I m p o r t a n t F e a t u re s ”
  • 11. N O   O F F I C I A L   JAVA   D R I V E R
  • 12. N O   O F F I C I A L   JAVA   D R I V E R R I S K   O F   B E I N G   R E P L AC E D   BY   A P O L LO
  • 13.
  • 14.
  • 15. R A B B I T M Q I S A N E F F I C I E N T, H I G H LY S C A L A B L E , A N D E A S Y- T O - D E P L O Y Q U E U I N G S Y S T E M T H AT M A K E S H A N D L I N G M E S S A G E T R A F F I C V I RT U A L LY E F F O RT L E S S Source: http://stackshare.io and others
  • 16. K A F K A I S A D I S T R I B U T E D , PA RT I T I O N E D , R E P L I C AT E D C O M M I T L O G S E R V I C E . I T P R O V I D E S T H E F U N C T I O N A L I T Y O F A M E S S A G I N G S Y S T E M , W I T H A U N I Q U E D E S I G N Source: http://stackshare.io and others
  • 17. B E N C H M A R K . I O
  • 18. R O C K E T L A U N C H E R
  • 19. B E N C H M A R K S C A N P R E D I C T L O A D U N D E R C E RTA I N C O N D I T I O N S , B U T A R E FA R F R O M B E I N G P E R F E C T. T H E R E A L P R E D I C T O R I S R U N N I N G I N S H A D O W M O D E
  • 20. M A C H I N E D E TA I L S r3.2xlarge - Optimized for memory-intensive applications 8 cores - Intel Xeon E5-2670 v2 (Ivy Bridge) Processors 61GB of RAM 160GB SSD Memory Ubuntu: 14.04 64bit AMD Java: 1.7.0_79 64bit RabbitMQ: 3.5.2 Apache Kafka: 2.9.2-0.8.2.1
  • 21. 1 P / 1 C / 1 K B / T O P I C P R O D U C E RTHROUGHPUT/ SECOND 0 30,000 60,000 90,000 120,000 1 2 3 RabbitMQ Guaranteed Delivery Kafka No Guarantees On Delivery Kafka Guaranteed Delivery C O N S U M E R THROUGHPUT/ SECOND 0 15,000 30,000 45,000 60,000 1 2 3 RabbitMQ Guaranteed Delivery Kafka No Guarantees On Delivery Kafka Guaranteed Delivery
  • 22. 1 P / 1 C / 4 K B / T O P I C P R O D U C E RTHROUGHPUT/ SECOND 0 15,000 30,000 45,000 60,000 1 2 3 RabbitMQ Guaranteed Delivery Kafka No Guarantees On Delivery Kafka Guaranteed Delivery C O N S U M E R THROUGHPUT/ SECOND 0 10,000 20,000 30,000 40,000 1 2 3 RabbitMQ Guaranteed Delivery Kafka No Guarantees On Delivery Kafka Guaranteed Delivery
  • 23. 1 P / 1 C / 1 0 0 K B / T O P I C P R O D U C E RTHROUGHPUT/ SECOND 0 2,500 5,000 7,500 10,000 1 2 3 RabbitMQ Guaranteed Delivery Kafka No Guarantees On Delivery Kafka Guaranteed Delivery C O N S U M E R THROUGHPUT/ SECOND 0 2,250 4,500 6,750 9,000 1 2 3 RabbitMQ Guaranteed Delivery Kafka No Guarantees On Delivery Kafka Guaranteed Delivery
  • 24. 1 P / 0 C / 4 K B / T O P I C P R O D U C E R THROUGHPUT/ SECOND 0 15,000 30,000 45,000 60,000 1 2 3 RabbitMQ Guaranteed Delivery Kafka No Guarantees On Delivery Kafka Guaranteed Delivery L O A D
  • 25. 0 P / 1 C / 4 K B / T O P I C C O N S U M E R THROUGHPUT/ SECOND 0 35,000 70,000 1 2 3 RabbitMQ Guaranteed Delivery Kafka No Guarantees On Delivery Kafka Guaranteed Delivery U N L O A D
  • 26. 5 P / 5 C / 4 K B / T O P I C P R O D U C E RTHROUGHPUT/ SECOND 0 4,750 9,500 14,250 19,000 1 2 3 RabbitMQ Guaranteed Delivery Kafka Guaranteed Delivery (1 partition) Kafka Guaranteed Delivery (5 partitions) RabbitMQ Guaranteed Delivery (Durable) C O N S U M E R THROUGHPUT/ SECOND 0 4,000 8,000 12,000 16,000 1 2 3 RabbitMQ Guaranteed Delivery Kafka Guaranteed Delivery (1 partition) Kafka Guaranteed Delivery (5 partitions) RabbitMQ Guaranteed Delivery (Durable)
  • 27. 5 P / 5 C / 4 K B / T O P I C P R O D U C E RTHROUGHPUT/ SECOND 0 40,000 80,000 120,000 160,000 1 2 3 RabbitMQ Guaranteed Delivery Kafka No Guarantees On Delivery C O N S U M E R THROUGHPUT/ SECOND 0 15,000 30,000 45,000 60,000 1 2 3 RabbitMQ Guaranteed Delivery Kafka No Guarantees On Delivery
  • 28. L AT E N C Y F O R B O T H M E A N < 1 M S M A X < 4 0 M S
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34. S T R E N G T H S • R E A L LY N I C E D E S I G N F O R L O G S H I P P I N G , E . G . I F Y O U WA N T T O W R I T E A V O L AT I L E E V E N T F I R E H O S E T O D I S K , A N D N E E D ' E L A S T I C ' C O N S U M P T I O N • I M P L E M E N T S B U L K I N G A N D B U F F E R I N G ( W H E N W R I T I N G T O D I S K ) H E N C E R E A L LY P E R F O R M A N T • VA R I E T Y O F T E C H N O L O G Y I N T E G R AT I O N S I N H A D O O P E C O S Y S T E M , S P E C I F I C A L LY F O R S T R E A M P R O C E S S I N G
  • 35. W E A K N E S S E S • N O T B U I LT F O R U S E I N T R A N S A C T I O N A L S I T U AT I O N S • W E A K D E L I V E RY G U A R A N T E E S • A M AT E U R C O N S U M E R A N D P R O D U C E R C O D E I M P L E M E N TAT I O N S • D O E S N ' T H AV E M E S S A G E A C K N O W L E D G E M E N T S B E T W E E N B R O K E R - > C O N S U M E R • E X T R A C O M P L E X I T Y B E C A U S E O F Z O O K E E P E R ( B A D R E C O V E RY W H E N E I T H E R T H E Z O O K E E P E R O R B R O K E R D I E ) • E X P E R I E N C E D B Y E L E VAT E D T E A M • D O E S N ’ T H AV E A N O T I O N O F N O N - P E R S I S T E N T Q U E U E / T O P I C • V E RY C L O S E T I E B E T W E E N C O N S U M E R C O U N T S A N D PA RT I T I O N S ( I F L E S S C O N S U M E R S T H A N PA RT I T I O N S , S O M E C O N S U M E R S W I L L D O N O T H I N G ) • L O G C L E A N E R N E E D S T U N I N G , O T H E R W I S E Y O U Q U I C K LY R U N O U T O F S PA C E • D O E S N ’ T P E R F O R M W E L L F O R L A R G E M E S S A G E S • N E E D T O B U Y S U P P O RT • R O U T I N G N O T I O N S A R E N O T S U P P O RT E D • L E A R N I N G C U R V E I S S T E E P
  • 36. S T R E N G T H S • E A S Y T O S E T U P W I T H V I RT U A L LY N O I N T E R V E N T I O N ( I T J U S T W O R K S ) • I M P L E M E N T S P R O P E R D E L I V E RY G U A R A N T E E S • C O M P R E H E N S I V E D O C U M E N TAT I O N ( A N Y T H I N G I WA N T E D T O F I N D WA S AT M Y F I N G E RT I P ) • M AT U R E P R O D U C T • P R O V I D E S A VA R I E T Y O F M E S S A G E R O U T I N G C A PA B I L I T I E S ( E X C H A N G E , B I N D I N G A N D Q U E U I N G M O D E L ) • VA R I E T Y O F L A R G E C O M PA N I E S U S E I T A S A M E S S A G E B U S • E A S Y M I G R AT I O N F R O M E X I S T I N G J M S C O M P L I A N T S Y S T E M S • AVA I L A B I L I T Y O F C H E F C O O K B O O K • S U P P O RT S N O T I O N O F R O U T I N G E X C H A N G E S • R A B B I T M Q A S A S E R V I C E : H T T P : / / W W W. C L O U D A M Q P. C O M /
  • 37. W E A K N E S S E S • M A X I M U M O U T O F T H E B O X T H R O U G H P U T I S 5 0 K / S E C ( A LT H O U G H I T I S FA I R T O M E N T I O N T H AT L A R G E I N S TA L L AT I O N S , U P T O 1 . 3 M L N / S E C E X I S T )
  • 38. R E C O M M E N D AT I O N
  • 39. • U S E R A B B I T M Q A S A S T R A I G H T R E P L A C E M E N T F O R O U R C U R R E N T H O R N E T Q I N S TA L L AT I O N • E A S E O F S E T U P • S I M P L I C I T Y O F M I G R AT I O N • S U P P O RT O F R O U T I N G C A PA B I L I T I E S A N D J M S C O M P L I A N C Y • M E E T S O U R P E R F O R M A N C E R E Q U I R E M E N T S • G R E AT D O C U M E N TAT I O N A N D C O M M U N I T Y S U P P O RT • P R O F E S S I O N A L S U P P O RT I S AVA I L A B L E F R O M P I V O TA L
  • 40. • U S E K A F K A F O R L O G P R O C E S S I N G C A S E S T H AT R E Q U I R E N O G U A R A N T E E S O N D E L I V E RY • G O O D F O R S T R E A M P R O C E S S I N G • G O O D F O R M E T R I C S L O A D I N G A N D P R O C E S S I N G • L O G D E L I V E RY A N D P R O C E S S I N G • E X C E P T I O N T R A C K I N G • F R A U D A N A LY S I S • H O RT O N W O R K S C E RT I F I E D K A F K A D I S T R I B U T I O N I S AVA I L A B L E
  • 41.
  • 42. 1 P / 1 C / 1 K B / Q U E U E N O N P E R S I S T E N T 1 P / 1 C / 1 K B / Q U E U E P E R S I S T E N T sample missing not an issue 1 P / 1 C / 1 K B / T O P I C N O N P E R S I S T E N T hornetq-2.2.5 rabbitmq-2.7.0 3 . 5 . 2   I S   M U C H   FA S T E R
  • 43. hornetq-2.2.5 rabbitmq-2.7.0 3 . 5 . 2   I S   M U C H   FA S T E R 5 P / 5 C / 1 K B / T O P I C P E R S I S T E N T 5 P / 5 C / 2 5 6 K B / T O P I C P E R S I S T E N T
  • 44.
  • 45. R E F E R E N C E S • h t t p : / / w w w. r a b b i t m q . c o m / b l o g / 2 0 1 2 / 0 4 / 2 5 / r a b b i t m q - p e r f o r m a n c e - m e a s u re m e n t s - p a r t - 2 / • h t t p : / / h i r a m c h i r i n o . c o m / s t o m p - b e n c h m a r k / e c 2 - c 1 . x l a rg e / i n d e x . h t m l • h t t p s : / / e n g i n e e r i n g . l i n k e d i n . c o m / k a f k a / b e n c h m a r k i n g - a p a c h e - k a f k a - 2 - m i l l i o n - w r i t e s - s e c o n d - t h re e - c h e a p - m a c h i n e s • h t t p : / / b l o g . p i v o t a l . i o / p i v o t a l / p ro d u c t s / r a b b i t m q - h i t s - o n e - m i l l i o n - m e s s a g e s - p e r- s e c o n d - o n - g o o g l e - c o m p u t e - e n g i n e
  • 46. T H A N K Y O U Q U E S T I O N S ?
  • 47. C R E D I T S : The Noun Project http://thenounproject.com Visual Elements From