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
700
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.3k
cooking infrastructure with chef
roidrage
4
230
riak-js
roidrage
1
280
designing for concurrency with riak
roidrage
11
1.9k
metrics, monitoring, logging
roidrage
82
15k
design for cloud - jax 2012
roidrage
2
300
A Riak Query Tale
roidrage
5
1k
Don't Use NoSQL
roidrage
10
1.1k
Designing Applications for Amazon Web Services (GOTO Aarhus)
roidrage
6
360
Other Decks in Technology
See All in Technology
TypeScript 6.0で非推奨化されるオプションたち
uhyo
12
3k
機密情報の漏洩を防げ! Webフロントエンド開発で意識すべき漏洩パターンとその対策
mizdra
PRO
10
4.2k
なぜインフラコードのモジュール化は難しいのか - アプリケーションコードとの本質的な違いから考える
mizzy
60
21k
AI × クラウドで シイタケの収穫時期を判定してみた
lamaglama39
1
380
学術的根拠から読み解くNotebookLMの音声活用法
shukob
0
130
明日から真似してOk!NOT A HOTELで実践している入社手続きの自動化
nkajihara
1
870
クレジットカードの不正を防止する技術
yutadayo
17
7.9k
Javaコミュニティの歩き方 ~参加から貢献まで、すべて教えます~
tabatad
0
140
大規模モノレポの秩序管理 失速しない多言語化フロントエンドの運用 / JSConf JP 2025
shoota
0
290
Moto: Latent Motion Token as the Bridging Language for Learning Robot Manipulation from Videos
peisuke
0
160
なぜThrottleではなくDebounceだったのか? 700並列リクエストと戦うサーバーサイド実装のすべて
yoshiori
13
4.9k
LINEスキマニ/LINEバイトにおけるバックエンド開発
lycorptech_jp
PRO
0
340
Featured
See All Featured
How to Think Like a Performance Engineer
csswizardry
28
2.3k
The Cult of Friendly URLs
andyhume
79
6.7k
The Pragmatic Product Professional
lauravandoore
36
7k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.3k
Context Engineering - Making Every Token Count
addyosmani
9
410
GitHub's CSS Performance
jonrohan
1032
470k
Making the Leap to Tech Lead
cromwellryan
135
9.6k
The Cost Of JavaScript in 2023
addyosmani
55
9.3k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
670
Documentation Writing (for coders)
carmenintech
76
5.1k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
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