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
Handling Failure in RabbitMQ
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Lorna Mitchell
May 17, 2017
Technology
0
920
Handling Failure in RabbitMQ
Lightning talk at the DataLayer event in Austin
Lorna Mitchell
May 17, 2017
Tweet
Share
More Decks by Lorna Mitchell
See All by Lorna Mitchell
Introduction to OpenAPI Specification
lornajane
1
800
Create PDFs from markup with rst2pdf
lornajane
3
860
Serverless Microservices are the New Black
lornajane
3
140
Serverless Computing with Apache OpenWhisk
lornajane
0
130
Build A Serverless Data Pipeline
lornajane
1
810
SQL, NoSQL and Beyond
lornajane
0
1.1k
Build a Serverless Data Pipeline
lornajane
1
1.1k
Road Trip Through Database Country
lornajane
1
1k
Serverless Microservices Are The New Black
lornajane
1
160
Other Decks in Technology
See All in Technology
予期せぬコストの急増を障害のように扱う――「コスト版ポストモーテム」の導入とその後の改善
muziyoshiz
1
2k
FinTech SREのAWSサービス活用/Leveraging AWS Services in FinTech SRE
maaaato
0
130
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
13k
OpenShiftでllm-dを動かそう!
jpishikawa
0
130
Greatest Disaster Hits in Web Performance
guaca
0
280
22nd ACRi Webinar - NTT Kawahara-san's slide
nao_sumikawa
0
100
M&A 後の統合をどう進めるか ─ ナレッジワーク × Poetics が実践した組織とシステムの融合
kworkdev
PRO
1
480
プロポーザルに込める段取り八分
shoheimitani
1
560
SREチームをどう作り、どう育てるか ― Findy横断SREのマネジメント
rvirus0817
0
320
モダンUIでフルサーバーレスなAIエージェントをAmplifyとCDKでサクッとデプロイしよう
minorun365
4
220
日本の85%が使う公共SaaSは、どう育ったのか
taketakekaho
1
230
We Built for Predictability; The Workloads Didn’t Care
stahnma
0
140
Featured
See All Featured
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
67
Balancing Empowerment & Direction
lara
5
890
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
330
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
0
260
Chasing Engaging Ingredients in Design
codingconduct
0
110
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
170
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
130
Designing Experiences People Love
moore
144
24k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.3k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.1k
Transcript
Handling Failure in RabbitMQ Lorna Mitchell, IBM https://speakerdeck.com/lornajane
Queues and RabbitMQ • Queues are a brilliant addition to
any application • They introduce coupling points • RabbitMQ is an open source, powerful message queue • https://www.rabbitmq.com @lornajane
A Selection Box Of Failures @lornajane
Message Not Processed Question: Better late than never? @lornajane
Implementing Retries RabbitMQ doesn't have built in support but: 1.
Identify message should be retried 2. Create a new message with same data 3. Add retry count/date 4. Ack the original message 5. Reject after X attempts @lornajane
Can Never Process Message Be Defensive: Fail when you can
Optionally: use a dead letter exchange @lornajane
Dead Letter Exchanges @lornajane
Reincarnating Messages From the dead letter exchange we usually: •
monitor and log what arrives • collect messages, then re-route to original destination when danger has passed @lornajane
Healthy Queues Good metrics avoid nasty surprises As a minimum:
queue size, worker uptime, processing time @lornajane
Choose How To Fail @lornajane
Thanks! Blog post: http://lrnja.net/rabbitfail Personal blog: https://lornajane.net Try RabbitMQ: •
https://rabbitmq.com/ • https://bluemix.net @lornajane