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 Message Queue
Search
Mathias Meyer
April 22, 2013
Technology
4
670
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.1k
cooking infrastructure with chef
roidrage
4
220
riak-js
roidrage
1
270
designing for concurrency with riak
roidrage
11
1.8k
metrics, monitoring, logging
roidrage
82
14k
design for cloud - jax 2012
roidrage
2
290
A Riak Query Tale
roidrage
5
990
Don't Use NoSQL
roidrage
10
1k
Designing Applications for Amazon Web Services (GOTO Aarhus)
roidrage
6
340
Other Decks in Technology
See All in Technology
Matterport を使ってクラスメソッド各拠点のバーチャルオフィスツアーを作成してみた
wakatsuki
0
160
AI研修【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
130
Azure AI ことはじめ
tsubakimoto_s
0
130
LINE WORKSへ簡単通知!Incoming Webhookアプリの紹介
mmclsntr
0
110
RAGのサービスをリリースして1年3ヶ月が経ちました
segavvy
4
960
Amazon FSx for NetApp ONTAPのパフォーマンスチューニング要素をまとめてみた #cm_odyssey #devio2024
non97
0
220
コミュニティサービスに「あなたへ」フィードを リリースするまでの試行錯誤
takapy
1
150
コンテナ・K8s研修 - 後半 Kubernetes 基礎&ハンズオン【MIXI 24新卒技術研修】
mixi_engineers
PRO
1
120
[I/O Extended Android 2024] What`s new in Android 2024
kyeongwan
0
220
What if...? 처음부터 다시 LLM 어플리케이션을 개발한다면
huffon
0
1k
VPoEの視点から見た、ヘンリーがサーバーサイドKotlinを使う理由 / Why Server-side Kotlin 2024
cho0o0
1
420
20240717_イケコパ代表Copilot_in_Teams会社でこう使ってます
ponponmikankan
2
430
Featured
See All Featured
We Have a Design System, Now What?
morganepeng
46
7k
What’s in a name? Adding method to the madness
productmarketing
PRO
21
2.9k
Code Reviewing Like a Champion
maltzj
517
39k
Teambox: Starting and Learning
jrom
130
8.6k
Pencils Down: Stop Designing & Start Developing
hursman
118
11k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
Building Adaptive Systems
keathley
34
2k
Fashionably flexible responsive web design (full day workshop)
malarkey
399
65k
WebSockets: Embracing the real-time Web
robhawkes
59
7.2k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
121
18k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
44
4.7k
How to Think Like a Performance Engineer
csswizardry
4
590
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