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

Linux Profiling at Netflix
Linux Profiling at NetflixLinux Profiling at Netflix
Linux Profiling at NetflixBrendan Gregg
 
Building Community APIs using GraphQL, Neo4j, and Kotlin
Building Community APIs using GraphQL, Neo4j, and KotlinBuilding Community APIs using GraphQL, Neo4j, and Kotlin
Building Community APIs using GraphQL, Neo4j, and KotlinNeo4j
 
Introduction to DataFusion An Embeddable Query Engine Written in Rust
Introduction to DataFusion  An Embeddable Query Engine Written in RustIntroduction to DataFusion  An Embeddable Query Engine Written in Rust
Introduction to DataFusion An Embeddable Query Engine Written in RustAndrew Lamb
 
InfluxDB IOx Tech Talks: Replication, Durability and Subscriptions in InfluxD...
InfluxDB IOx Tech Talks: Replication, Durability and Subscriptions in InfluxD...InfluxDB IOx Tech Talks: Replication, Durability and Subscriptions in InfluxD...
InfluxDB IOx Tech Talks: Replication, Durability and Subscriptions in InfluxD...InfluxData
 
Data pipelines observability: OpenLineage & Marquez
Data pipelines observability:  OpenLineage & MarquezData pipelines observability:  OpenLineage & Marquez
Data pipelines observability: OpenLineage & MarquezJulien Le Dem
 
026 Neo4j Data Loading (ETL_ELT) Best Practices - NODES2022 AMERICAS Advanced...
026 Neo4j Data Loading (ETL_ELT) Best Practices - NODES2022 AMERICAS Advanced...026 Neo4j Data Loading (ETL_ELT) Best Practices - NODES2022 AMERICAS Advanced...
026 Neo4j Data Loading (ETL_ELT) Best Practices - NODES2022 AMERICAS Advanced...Neo4j
 
Microservices Tracing With Spring Cloud and Zipkin @Szczecin JUG
Microservices Tracing With Spring Cloud and Zipkin @Szczecin JUGMicroservices Tracing With Spring Cloud and Zipkin @Szczecin JUG
Microservices Tracing With Spring Cloud and Zipkin @Szczecin JUGMarcin Grzejszczak
 
Cilium - Container Networking with BPF & XDP
Cilium - Container Networking with BPF & XDPCilium - Container Networking with BPF & XDP
Cilium - Container Networking with BPF & XDPThomas Graf
 
gRPC Design and Implementation
gRPC Design and ImplementationgRPC Design and Implementation
gRPC Design and ImplementationVarun Talwar
 
Pinot: Near Realtime Analytics @ Uber
Pinot: Near Realtime Analytics @ UberPinot: Near Realtime Analytics @ Uber
Pinot: Near Realtime Analytics @ UberXiang Fu
 
ONF Transport API (TAPI) Project
ONF Transport API (TAPI) ProjectONF Transport API (TAPI) Project
ONF Transport API (TAPI) ProjectDeborah Porchivina
 
PHP と SAPI と ZendEngine3 と
PHP と SAPI と ZendEngine3 とPHP と SAPI と ZendEngine3 と
PHP と SAPI と ZendEngine3 とdo_aki
 
Solr Query Parsing
Solr Query ParsingSolr Query Parsing
Solr Query ParsingErik Hatcher
 
Building and Scaling the Fastly Network - João Taveira at Fastly Altitude 2015
Building and Scaling the Fastly Network - João Taveira at Fastly Altitude 2015Building and Scaling the Fastly Network - João Taveira at Fastly Altitude 2015
Building and Scaling the Fastly Network - João Taveira at Fastly Altitude 2015Fastly
 
Reading The Source Code of Presto
Reading The Source Code of PrestoReading The Source Code of Presto
Reading The Source Code of PrestoTaro L. Saito
 
Big Data Storage - Comparing Speed and Features for Avro, JSON, ORC, and Parquet
Big Data Storage - Comparing Speed and Features for Avro, JSON, ORC, and ParquetBig Data Storage - Comparing Speed and Features for Avro, JSON, ORC, and Parquet
Big Data Storage - Comparing Speed and Features for Avro, JSON, ORC, and ParquetDataWorks Summit
 
Dynamic filtering for presto join optimisation
Dynamic filtering for presto join optimisationDynamic filtering for presto join optimisation
Dynamic filtering for presto join optimisationOri Reshef
 
Avoiding Deadlocks: Lessons Learned with Zephyr Health Using Neo4j and MongoD...
Avoiding Deadlocks: Lessons Learned with Zephyr Health Using Neo4j and MongoD...Avoiding Deadlocks: Lessons Learned with Zephyr Health Using Neo4j and MongoD...
Avoiding Deadlocks: Lessons Learned with Zephyr Health Using Neo4j and MongoD...Neo4j
 

What's hot (20)

Linux Profiling at Netflix
Linux Profiling at NetflixLinux Profiling at Netflix
Linux Profiling at Netflix
 
Building Community APIs using GraphQL, Neo4j, and Kotlin
Building Community APIs using GraphQL, Neo4j, and KotlinBuilding Community APIs using GraphQL, Neo4j, and Kotlin
Building Community APIs using GraphQL, Neo4j, and Kotlin
 
Introduction to DataFusion An Embeddable Query Engine Written in Rust
Introduction to DataFusion  An Embeddable Query Engine Written in RustIntroduction to DataFusion  An Embeddable Query Engine Written in Rust
Introduction to DataFusion An Embeddable Query Engine Written in Rust
 
InfluxDB IOx Tech Talks: Replication, Durability and Subscriptions in InfluxD...
InfluxDB IOx Tech Talks: Replication, Durability and Subscriptions in InfluxD...InfluxDB IOx Tech Talks: Replication, Durability and Subscriptions in InfluxD...
InfluxDB IOx Tech Talks: Replication, Durability and Subscriptions in InfluxD...
 
Data pipelines observability: OpenLineage & Marquez
Data pipelines observability:  OpenLineage & MarquezData pipelines observability:  OpenLineage & Marquez
Data pipelines observability: OpenLineage & Marquez
 
InfluxDB & Grafana
InfluxDB & GrafanaInfluxDB & Grafana
InfluxDB & Grafana
 
026 Neo4j Data Loading (ETL_ELT) Best Practices - NODES2022 AMERICAS Advanced...
026 Neo4j Data Loading (ETL_ELT) Best Practices - NODES2022 AMERICAS Advanced...026 Neo4j Data Loading (ETL_ELT) Best Practices - NODES2022 AMERICAS Advanced...
026 Neo4j Data Loading (ETL_ELT) Best Practices - NODES2022 AMERICAS Advanced...
 
Microservices Tracing With Spring Cloud and Zipkin @Szczecin JUG
Microservices Tracing With Spring Cloud and Zipkin @Szczecin JUGMicroservices Tracing With Spring Cloud and Zipkin @Szczecin JUG
Microservices Tracing With Spring Cloud and Zipkin @Szczecin JUG
 
Cilium - Container Networking with BPF & XDP
Cilium - Container Networking with BPF & XDPCilium - Container Networking with BPF & XDP
Cilium - Container Networking with BPF & XDP
 
Influxdb and time series data
Influxdb and time series dataInfluxdb and time series data
Influxdb and time series data
 
gRPC Design and Implementation
gRPC Design and ImplementationgRPC Design and Implementation
gRPC Design and Implementation
 
Pinot: Near Realtime Analytics @ Uber
Pinot: Near Realtime Analytics @ UberPinot: Near Realtime Analytics @ Uber
Pinot: Near Realtime Analytics @ Uber
 
ONF Transport API (TAPI) Project
ONF Transport API (TAPI) ProjectONF Transport API (TAPI) Project
ONF Transport API (TAPI) Project
 
PHP と SAPI と ZendEngine3 と
PHP と SAPI と ZendEngine3 とPHP と SAPI と ZendEngine3 と
PHP と SAPI と ZendEngine3 と
 
Solr Query Parsing
Solr Query ParsingSolr Query Parsing
Solr Query Parsing
 
Building and Scaling the Fastly Network - João Taveira at Fastly Altitude 2015
Building and Scaling the Fastly Network - João Taveira at Fastly Altitude 2015Building and Scaling the Fastly Network - João Taveira at Fastly Altitude 2015
Building and Scaling the Fastly Network - João Taveira at Fastly Altitude 2015
 
Reading The Source Code of Presto
Reading The Source Code of PrestoReading The Source Code of Presto
Reading The Source Code of Presto
 
Big Data Storage - Comparing Speed and Features for Avro, JSON, ORC, and Parquet
Big Data Storage - Comparing Speed and Features for Avro, JSON, ORC, and ParquetBig Data Storage - Comparing Speed and Features for Avro, JSON, ORC, and Parquet
Big Data Storage - Comparing Speed and Features for Avro, JSON, ORC, and Parquet
 
Dynamic filtering for presto join optimisation
Dynamic filtering for presto join optimisationDynamic filtering for presto join optimisation
Dynamic filtering for presto join optimisation
 
Avoiding Deadlocks: Lessons Learned with Zephyr Health Using Neo4j and MongoD...
Avoiding Deadlocks: Lessons Learned with Zephyr Health Using Neo4j and MongoD...Avoiding Deadlocks: Lessons Learned with Zephyr Health Using Neo4j and MongoD...
Avoiding Deadlocks: Lessons Learned with Zephyr Health Using Neo4j and MongoD...
 

Viewers also liked

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, KafkaAll Things Open
 
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 platformsDerek Collison
 
1005 cern-active mq-v2
1005 cern-active mq-v21005 cern-active mq-v2
1005 cern-active mq-v2James Casey
 
The House That Twitters
The House That TwittersThe House That Twitters
The House That Twittersandysc
 
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 ProductionRick Warren
 
Intel Mashery API Management Solution
Intel Mashery API Management SolutionIntel Mashery API Management Solution
Intel Mashery API Management SolutionDavid Gevorkyan
 
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 2014Derek Collison
 
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 natsRaul Perez
 
Build Golang projects properly with Makefiles
Build Golang projects properly with MakefilesBuild Golang projects properly with Makefiles
Build Golang projects properly with MakefilesRaül Pérez
 
Introduction to ActiveMQ Apollo
Introduction to ActiveMQ ApolloIntroduction to ActiveMQ Apollo
Introduction to ActiveMQ Apollodejanb
 
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 KafkaIan Downard
 
Messaging With ActiveMQ
Messaging With ActiveMQMessaging With ActiveMQ
Messaging With ActiveMQBruce Snyder
 
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 SystemsJonas Bonér
 
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 WayRoland Kuhn
 
Kafka as Message Broker
Kafka as Message BrokerKafka as Message Broker
Kafka as Message BrokerHaluan Irsad
 
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 NATSApcera
 

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)

Blue Moon - Advertising Plan (Group Project)
Blue Moon - Advertising Plan (Group Project)Blue Moon - Advertising Plan (Group Project)
Blue Moon - Advertising Plan (Group Project)Sam Cheema
 
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 PitfallsPlatform9
 
C-Suite Guide to Cybersecurity
C-Suite Guide to CybersecurityC-Suite Guide to Cybersecurity
C-Suite Guide to CybersecurityMICHAEL MOSHIRI
 
Conventions of a thriller
Conventions of a thrillerConventions of a thriller
Conventions of a thrilleremmalouise01
 
Altmetrics in UMCG: pilot project 2016
Altmetrics in UMCG: pilot project 2016Altmetrics in UMCG: pilot project 2016
Altmetrics in UMCG: pilot project 2016Guus van den Brekel
 
Interactive media : information and libraries (#bobcatsss2017)
Interactive media : information and libraries (#bobcatsss2017)Interactive media : information and libraries (#bobcatsss2017)
Interactive media : information and libraries (#bobcatsss2017)Guus van den Brekel
 
American Marketing Association - Strategy Presentation
American Marketing Association - Strategy Presentation American Marketing Association - Strategy Presentation
American Marketing Association - Strategy Presentation Sam Cheema
 
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 PlacesMike Crabb
 
PEACE EDUCATION (PEACE THEME 5)
PEACE EDUCATION (PEACE THEME 5)PEACE EDUCATION (PEACE THEME 5)
PEACE EDUCATION (PEACE THEME 5)Reymart Dellomas
 
Ninja Correlation of APT Binaries
Ninja Correlation of APT BinariesNinja Correlation of APT Binaries
Ninja Correlation of APT BinariesCODE BLUE
 
Robotics
RoboticsRobotics
RoboticsRamki M
 
Codecademy Live QA Presentation
Codecademy Live QA PresentationCodecademy Live QA Presentation
Codecademy Live QA PresentationJames Kim
 
Metodologia simulacro
Metodologia simulacroMetodologia simulacro
Metodologia simulacroMartha Salas
 
Building Legends at One World Observatory
Building Legends at One World ObservatoryBuilding Legends at One World Observatory
Building Legends at One World ObservatoryAddison O'Connor
 
M|SOURCE WORK ORDER SYSTEM
M|SOURCE WORK ORDER SYSTEMM|SOURCE WORK ORDER SYSTEM
M|SOURCE WORK ORDER SYSTEMScott 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

DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
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 educationjfdjdjcjdnsjd
 
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...Jeffrey Haguewood
 
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 WorkerThousandEyes
 
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...DianaGray10
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
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, Adobeapidays
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
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 challengesrafiqahmad00786416
 

Recently uploaded (20)

DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
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
 
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...
 
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
 
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...
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
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
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
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
 

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