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
Lorna Mitchell
May 17, 2017
Technology
0
890
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
710
Create PDFs from markup with rst2pdf
lornajane
3
760
Serverless Microservices are the New Black
lornajane
3
110
Serverless Computing with Apache OpenWhisk
lornajane
0
99
Build A Serverless Data Pipeline
lornajane
1
740
SQL, NoSQL and Beyond
lornajane
0
1k
Build a Serverless Data Pipeline
lornajane
1
1.1k
Road Trip Through Database Country
lornajane
1
950
Serverless Microservices Are The New Black
lornajane
1
130
Other Decks in Technology
See All in Technology
Oracle Database Technology Night #87-1 : Exadata Database Service on Exascale Infrastructure(ExaDB-XS)サービス詳細
oracle4engineer
PRO
1
140
依存パッケージの更新はコツコツが勝つコツ! / phpcon_nagoya2025
blue_goheimochi
3
210
AWS Well-Architected Frameworkで学ぶAmazon ECSのセキュリティ対策
umekou
2
130
脳波を用いた嗜好マッチングシステム
hokkey621
0
280
手を動かしてレベルアップしよう!
maruto
0
190
Cracking the Coding Interview 6th Edition
gdplabs
14
28k
「正しく」失敗できる チームの作り方 〜リアルな事例から紐解く失敗を恐れない組織とは〜 / A team that can fail correctly
i35_267
4
820
あなたが人生で成功するための5つの普遍的法則 #jawsug #jawsdays2025 / 20250301 HEROZ
yoshidashingo
2
250
1行のコードから社会課題の解決へ: EMの探究、事業・技術・組織を紡ぐ実践知 / EM Conf 2025
9ma3r
8
3.4k
CDKのコードを書く環境を作りました with Amazon Q
nobuhitomorioka
1
160
偏光画像処理ライブラリを作った話
elerac
1
160
生成 AI プロダクトを育てる技術 〜データ品質向上による継続的な価値創出の実践〜
icoxfog417
PRO
5
1.9k
Featured
See All Featured
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
The Cost Of JavaScript in 2023
addyosmani
47
7.4k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.2k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
114
50k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
Site-Speed That Sticks
csswizardry
4
400
A Philosophy of Restraint
colly
203
16k
Agile that works and the tools we love
rasmusluckow
328
21k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
46
2.3k
Building a Scalable Design System with Sketch
lauravandoore
461
33k
Large-scale JavaScript Application Architecture
addyosmani
511
110k
Done Done
chrislema
182
16k
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