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

Madalmaade ja eesti kunst 16.saj. l, karlis kolk, 12b
Madalmaade ja eesti kunst 16.saj. l, karlis kolk, 12bMadalmaade ja eesti kunst 16.saj. l, karlis kolk, 12b
Madalmaade ja eesti kunst 16.saj. l, karlis kolk, 12b
jpg12b
 
Ludwig van Beethoven
Ludwig van BeethovenLudwig van Beethoven
Ludwig van Beethoven
anneli3
 
Eesti keele päritolust
Eesti keele päritolustEesti keele päritolust
Eesti keele päritolust
virtsukool
 
Keskaeg
KeskaegKeskaeg
Keskaeg
sanlil
 
Suur prantsuse revolutsioon
Suur prantsuse revolutsioonSuur prantsuse revolutsioon
Suur prantsuse revolutsioon
Natalja Dovgan
 
Haridus ja kultuur liivimaal
Haridus ja kultuur liivimaalHaridus ja kultuur liivimaal
Haridus ja kultuur liivimaal
Inga Zemit
 
III teema 3.2 meeskonnatöö
III teema 3.2 meeskonnatööIII teema 3.2 meeskonnatöö
III teema 3.2 meeskonnatöö
opetajaarno
 

What's hot (20)

Net Devops Overview
Net Devops OverviewNet Devops Overview
Net Devops Overview
 
Madalmaade ja eesti kunst 16.saj. l, karlis kolk, 12b
Madalmaade ja eesti kunst 16.saj. l, karlis kolk, 12bMadalmaade ja eesti kunst 16.saj. l, karlis kolk, 12b
Madalmaade ja eesti kunst 16.saj. l, karlis kolk, 12b
 
Ludwig van Beethoven
Ludwig van BeethovenLudwig van Beethoven
Ludwig van Beethoven
 
EESTI MAAVARAD
EESTI MAAVARADEESTI MAAVARAD
EESTI MAAVARAD
 
Eesti keele päritolust
Eesti keele päritolustEesti keele päritolust
Eesti keele päritolust
 
Hydrofluoro-olefins (HFOs) for Commercial Refrigeration - E. Monfrinotti - Ch...
Hydrofluoro-olefins (HFOs) for Commercial Refrigeration - E. Monfrinotti - Ch...Hydrofluoro-olefins (HFOs) for Commercial Refrigeration - E. Monfrinotti - Ch...
Hydrofluoro-olefins (HFOs) for Commercial Refrigeration - E. Monfrinotti - Ch...
 
Balti erikord ja asehalduskord
Balti erikord ja asehalduskordBalti erikord ja asehalduskord
Balti erikord ja asehalduskord
 
Apache NiFi Crash Course Intro
Apache NiFi Crash Course IntroApache NiFi Crash Course Intro
Apache NiFi Crash Course Intro
 
VoltDB: as vantagens e os desafios dos banco de dados NewSQL
VoltDB: as vantagens e os desafios dos banco de dados NewSQLVoltDB: as vantagens e os desafios dos banco de dados NewSQL
VoltDB: as vantagens e os desafios dos banco de dados NewSQL
 
Pjotr TšAikovski
Pjotr TšAikovskiPjotr TšAikovski
Pjotr TšAikovski
 
Neutron packet logging framework
Neutron packet logging frameworkNeutron packet logging framework
Neutron packet logging framework
 
Keskaeg
KeskaegKeskaeg
Keskaeg
 
Suur prantsuse revolutsioon
Suur prantsuse revolutsioonSuur prantsuse revolutsioon
Suur prantsuse revolutsioon
 
Haridus ja kultuur liivimaal
Haridus ja kultuur liivimaalHaridus ja kultuur liivimaal
Haridus ja kultuur liivimaal
 
Vivaldi
VivaldiVivaldi
Vivaldi
 
Efektyvios burnos higienos priemonės
Efektyvios burnos higienos priemonėsEfektyvios burnos higienos priemonės
Efektyvios burnos higienos priemonės
 
Création de visuels personnalisés avec Power BI Visuals CLI
Création de visuels personnalisés avec Power BI Visuals CLICréation de visuels personnalisés avec Power BI Visuals CLI
Création de visuels personnalisés avec Power BI Visuals CLI
 
III teema 3.2 meeskonnatöö
III teema 3.2 meeskonnatööIII teema 3.2 meeskonnatöö
III teema 3.2 meeskonnatöö
 
Customer Intelligence: Using the ELK Stack to Analyze ForgeRock OpenAM Audit ...
Customer Intelligence: Using the ELK Stack to Analyze ForgeRock OpenAM Audit ...Customer Intelligence: Using the ELK Stack to Analyze ForgeRock OpenAM Audit ...
Customer Intelligence: Using the ELK Stack to Analyze ForgeRock OpenAM Audit ...
 
OpenStack API's and WSGI
OpenStack API's and WSGIOpenStack API's and WSGI
OpenStack API's and WSGI
 

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

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Recently uploaded (20)

HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
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
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
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
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
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
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 

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