Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
The Message Queue is Dead, Long Live the Messag...
Search
Mathias Meyer
April 22, 2013
Technology
4
690
The Message Queue is Dead, Long Live the Message Queue
Ramblings and thought experiments on message queues
Mathias Meyer
April 22, 2013
Tweet
Share
More Decks by Mathias Meyer
See All by Mathias Meyer
Building and Scaling an Distributed and Inclusive Team
roidrage
0
1.2k
cooking infrastructure with chef
roidrage
4
230
riak-js
roidrage
1
280
designing for concurrency with riak
roidrage
11
1.8k
metrics, monitoring, logging
roidrage
82
15k
design for cloud - jax 2012
roidrage
2
290
A Riak Query Tale
roidrage
5
1k
Don't Use NoSQL
roidrage
10
1k
Designing Applications for Amazon Web Services (GOTO Aarhus)
roidrage
6
350
Other Decks in Technology
See All in Technology
プルリクエストレビューを終わらせるためのチーム体制 / The Team for Completing Pull Request Reviews
nekonenene
1
920
Platform Engineeringで クラウドの「楽しくない」を解消しよう
jacopen
4
190
AI自体のOps 〜LLMアプリの運用、AWSサービスとOSSの使い分け〜
minorun365
PRO
9
820
データモデルYANGの処理系を再発明した話
tjmtrhs
0
230
OCI Success Journey OCIの何が評価されてる?疑問に答える事例セミナー(2025年2月実施)
oracle4engineer
PRO
2
220
あなたが人生で成功するための5つの普遍的法則 #jawsug #jawsdays2025 / 20250301 HEROZ
yoshidashingo
2
330
いまからでも遅くない!コンテナでWebアプリを動かしてみよう!コンテナハンズオン編
nomu
0
170
Snowflake ML モデルを dbt データパイプラインに組み込む
estie
0
110
サバイバルモード下でのエンジニアリングマネジメント
konifar
20
6k
事業モメンタムを生み出すプロダクト開発
macchiitaka
0
100
RayでPHPのデバッグをちょっと快適にする
muno92
PRO
0
200
データエンジニアリング領域におけるDuckDBのユースケース
chanyou0311
9
2.5k
Featured
See All Featured
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Designing Experiences People Love
moore
140
23k
BBQ
matthewcrist
87
9.5k
Making Projects Easy
brettharned
116
6k
Embracing the Ebb and Flow
colly
84
4.6k
Designing for Performance
lara
605
68k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
4
440
[RailsConf 2023] Rails as a piece of cake
palkan
53
5.3k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
KATA
mclloyd
29
14k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.2k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
46
2.4k
Transcript
the message queue is dead railsberry 2013, mathias meyer, @roidrage
travis-ci.org
None
None
None
the golden rules of message queues
#1 everything is a queue
www email upload live updates
rabbitmq activemq mqseries nsq beanstalkd sqs gearman qless kafka kestrel
qpid sidekiq resque zeromq celery mqseries stormmq amqp jms hornetq swiftmq delayed_job
tasks
publish/subscribe
publish/subscribe
broker
None
log streaming databass
None
unbounded queues
#2 a queue is either empty or infinitely full
the art of capacity planning
50 msg * 60 seconds * 30 minutes = 90000
msg
peak capacity: 120 msg/s
90000 msg / 120 msg/s = 12,5 min
None
#3 whenever something breaks, it's a queue backing up or
dropping messages
None
databass x x P x
None
retry databass x x P x
exponential backoff databass x x P x
handling queues involves business decisions
a thought experiment
message queues introduce tight coupling
hide the queue api
api
api
the queue is dead, long live the queue
no berries were harmed © railsberry