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
Swarrot - A library to consume them all
Search
Olivier Dolbeau
April 07, 2014
Programming
2
1.9k
Swarrot - A library to consume them all
Lightninh talk about Swarrot given at sfLive Paris 2014.
Olivier Dolbeau
April 07, 2014
Tweet
Share
More Decks by Olivier Dolbeau
See All by Olivier Dolbeau
Jane & Webby
odolbeau
0
300
Translating a monolingual application
odolbeau
2
430
DX: Developer eXperience
odolbeau
0
54
DX: Developer eXperience
odolbeau
0
420
EasyAdminBundle introduction
odolbeau
0
140
REX API Platform
odolbeau
0
1.1k
Features flags at BlaBlaCar
odolbeau
4
880
25+ million members in 22 countries, how to scale with Symfony2
odolbeau
1
390
Be gentle with your prod!
odolbeau
1
630
Other Decks in Programming
See All in Programming
Mastering Developer Experience: A Roadmap for Success 【開発生産性Conference 2024】
findyinc
1
380
ピグパーティにおけるMongoDB CommunityバージョンからAtlasへの移行事例
10969hotaka
0
130
Rustのweb開発を助ける 便利なツール紹介
yuki0418
1
190
SRE チーム立ち上げ前に考えたこと・取り組んだこと / Considerations and Preparations Before Establishing an SRE Team
mackey0225
3
320
OpenAI/Gemini APIを使って EPUBを翻訳するCLIツールをつくってみた
tomiyan
0
790
DMMプラットフォームにおけるTiDBの導入から運用まで
pospome
7
3k
大規模マルチテナントを解決するYugabyteDBという選択肢
nnaka2992
1
250
Cloudflare Workers x AWS Lambdaの組み合わせユースケース / Cloudflare Workers x AWS Lambda Combination Use Case
seike460
PRO
2
310
Async Await: Mastering Python's Time-Bending Tricks - EuroPython2024
yanbo
1
290
実用的かつリーズナブルな 「Azure × Gemini × LINE」~キャラクターBot 実装ライブデモ~
tomodo_ysys
1
170
君たちはどうコードをレビューする (される) か / 大吉祥寺.pm
utgwkk
15
8.5k
Architectures with Lightweight Stores: New Rules and Options
manfredsteyer
PRO
0
100
Featured
See All Featured
Clear Off the Table
cherdarchuk
89
320k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
13
430
Creatively Recalculating Your Daily Design Routine
revolveconf
214
11k
Building a Modern Day E-commerce SEO Strategy
aleyda
25
6.7k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
121
18k
[RailsConf 2023] Rails as a piece of cake
palkan
35
4.4k
Put a Button on it: Removing Barriers to Going Fast.
kastner
58
3.3k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
224
21k
Adopting Sorbet at Scale
ufuk
71
8.8k
KATA
mclloyd
20
13k
Designing on Purpose - Digital PM Summit 2013
jponch
113
6.6k
5 minutes of I Can Smell Your CMS
philhawksworth
200
19k
Transcript
Swarrot A library to consume them all
To consume what?? Messages
From where ? Any broker !
Yeah, it’s about asynchronous tasks! Because asynchronous is good u
know?
There is 2 actors • Producer • Consumer
Swarrot What it really is.
An open source library • License: MIT • https://github.com/swarrot/swarrot •
Started 1 month ago
How it works Just listen
Create a message provider
Create a processor
OK, you’re done! Consume!
WAIT!!! That’s not all!
It’s all about decoration!
Some processors And what they do!
ExceptionCatcherProcessor You just see it! Useful in prod env only.
InstantRetryProcessor Something wrong happened? OK, try again! Useful for API
calls.
SignalHandlerProcessor You don’t want to stop your consumer immediately if
they are working! A must have!
Others • AckProcessor • MaxExecutionTimeProcessor • MaxMessagesProcessor • RetryProcessor •
...
Who started this? Me! Web architect @odolbeau
But I’m not alone! • Rémy Lemeunier (remyLemeunier) • Grégoire
Pineau (lyrixx) • Willy Morin (kaiska) • Yohan Giarelli (yohang) THANK YOU!
Feel free to contribute!
One more thing!
It’s already used in production!
Thank you!