rq talk
-
Upload
zakiakhmad -
Category
Technology
-
view
2.114 -
download
2
description
Transcript of rq talk
![Page 1: rq talk](https://reader034.fdocuments.us/reader034/viewer/2022042814/5554af54b4c905fd608b5483/html5/thumbnails/1.jpg)
RQby Selwin Ong, 27/04/2013
Tuesday, April 30, 13
![Page 2: rq talk](https://reader034.fdocuments.us/reader034/viewer/2022042814/5554af54b4c905fd608b5483/html5/thumbnails/2.jpg)
http://python-rq.org
Tuesday, April 30, 13
![Page 3: rq talk](https://reader034.fdocuments.us/reader034/viewer/2022042814/5554af54b4c905fd608b5483/html5/thumbnails/3.jpg)
Apa itu RQ?
RQ is a Job Queue Library
It’s simple
Tuesday, April 30, 13
![Page 4: rq talk](https://reader034.fdocuments.us/reader034/viewer/2022042814/5554af54b4c905fd608b5483/html5/thumbnails/4.jpg)
The problem
Anda punya (web) app canggih
Perlu mengirimkan email
Membuat laporan
Memanggil API situs lain
Tuesday, April 30, 13
![Page 5: rq talk](https://reader034.fdocuments.us/reader034/viewer/2022042814/5554af54b4c905fd608b5483/html5/thumbnails/5.jpg)
Atau mungkin...
Apapun yang seharusnya di luar request/response cycle
Tuesday, April 30, 13
![Page 6: rq talk](https://reader034.fdocuments.us/reader034/viewer/2022042814/5554af54b4c905fd608b5483/html5/thumbnails/6.jpg)
Mencari solusi...
Anda mulai mencari solusi...
Tuesday, April 30, 13
![Page 7: rq talk](https://reader034.fdocuments.us/reader034/viewer/2022042814/5554af54b4c905fd608b5483/html5/thumbnails/7.jpg)
Alternatif 1
Tuesday, April 30, 13
![Page 8: rq talk](https://reader034.fdocuments.us/reader034/viewer/2022042814/5554af54b4c905fd608b5483/html5/thumbnails/8.jpg)
Alternative 2
:(
Tuesday, April 30, 13
![Page 9: rq talk](https://reader034.fdocuments.us/reader034/viewer/2022042814/5554af54b4c905fd608b5483/html5/thumbnails/9.jpg)
Disclaimer
Saya salah satu dari dua core developer RQ
Subjective opinion ahead ;)
Tuesday, April 30, 13
![Page 10: rq talk](https://reader034.fdocuments.us/reader034/viewer/2022042814/5554af54b4c905fd608b5483/html5/thumbnails/10.jpg)
Ok...
Jadi kita menggunakan Celery
Ada 1 masalah baru
Tuesday, April 30, 13
![Page 11: rq talk](https://reader034.fdocuments.us/reader034/viewer/2022042814/5554af54b4c905fd608b5483/html5/thumbnails/11.jpg)
Sekarang kita perlu belajar...
Rabbit MQ
AMQP
Channels, Exchanges
Routing Keys
Result store (biasanya database)
Tuesday, April 30, 13
![Page 12: rq talk](https://reader034.fdocuments.us/reader034/viewer/2022042814/5554af54b4c905fd608b5483/html5/thumbnails/12.jpg)
Tuesday, April 30, 13
![Page 13: rq talk](https://reader034.fdocuments.us/reader034/viewer/2022042814/5554af54b4c905fd608b5483/html5/thumbnails/13.jpg)
Disclaimer
Kaya Fitur
Reliable
Tuesday, April 30, 13
![Page 14: rq talk](https://reader034.fdocuments.us/reader034/viewer/2022042814/5554af54b4c905fd608b5483/html5/thumbnails/14.jpg)
Tapi
!= Simple
Tuesday, April 30, 13
![Page 15: rq talk](https://reader034.fdocuments.us/reader034/viewer/2022042814/5554af54b4c905fd608b5483/html5/thumbnails/15.jpg)
http://python-rq.org
https://github.com/nvie/rq
Tuesday, April 30, 13
![Page 16: rq talk](https://reader034.fdocuments.us/reader034/viewer/2022042814/5554af54b4c905fd608b5483/html5/thumbnails/16.jpg)
Teknologi
Tuesday, April 30, 13
![Page 17: rq talk](https://reader034.fdocuments.us/reader034/viewer/2022042814/5554af54b4c905fd608b5483/html5/thumbnails/17.jpg)
Prinsip
1. Simple
2. Reliable
Tuesday, April 30, 13
![Page 18: rq talk](https://reader034.fdocuments.us/reader034/viewer/2022042814/5554af54b4c905fd608b5483/html5/thumbnails/18.jpg)
Simplicity
Zero config
Hanya memerlukan Redis
Tuesday, April 30, 13
![Page 19: rq talk](https://reader034.fdocuments.us/reader034/viewer/2022042814/5554af54b4c905fd608b5483/html5/thumbnails/19.jpg)
Instalasi
pip install rq
Tuesday, April 30, 13
![Page 20: rq talk](https://reader034.fdocuments.us/reader034/viewer/2022042814/5554af54b4c905fd608b5483/html5/thumbnails/20.jpg)
Penggunaan
q = Queue(connection=redis)
q.enqueue(send_mail, ‘[email protected]’)
Tuesday, April 30, 13
![Page 21: rq talk](https://reader034.fdocuments.us/reader034/viewer/2022042814/5554af54b4c905fd608b5483/html5/thumbnails/21.jpg)
Penggunaan
DEMO
Tuesday, April 30, 13
![Page 22: rq talk](https://reader034.fdocuments.us/reader034/viewer/2022042814/5554af54b4c905fd608b5483/html5/thumbnails/22.jpg)
Production ready
750+ Stars di Github
Tuesday, April 30, 13
![Page 23: rq talk](https://reader034.fdocuments.us/reader034/viewer/2022042814/5554af54b4c905fd608b5483/html5/thumbnails/23.jpg)
Production ready
Sudah memroses milyaran Jobs
Tuesday, April 30, 13
![Page 24: rq talk](https://reader034.fdocuments.us/reader034/viewer/2022042814/5554af54b4c905fd608b5483/html5/thumbnails/24.jpg)
Coming soon...
Concurrent workers
Gevent, Pre-forking worker
https://github.com/nvie/new_workers
Tuesday, April 30, 13
![Page 25: rq talk](https://reader034.fdocuments.us/reader034/viewer/2022042814/5554af54b4c905fd608b5483/html5/thumbnails/25.jpg)
Coming soon...
Job scheduling
https://github.com/ui/rq-scheduler
Tuesday, April 30, 13
![Page 26: rq talk](https://reader034.fdocuments.us/reader034/viewer/2022042814/5554af54b4c905fd608b5483/html5/thumbnails/26.jpg)
Coming soon...
Job dependency
https://github.com/nvie/rq/pull/207
Tuesday, April 30, 13
![Page 27: rq talk](https://reader034.fdocuments.us/reader034/viewer/2022042814/5554af54b4c905fd608b5483/html5/thumbnails/27.jpg)
Job dependency
job = q.enqueue(generate_report)
q.enqueue(send_email, after=job)
Tuesday, April 30, 13
![Page 28: rq talk](https://reader034.fdocuments.us/reader034/viewer/2022042814/5554af54b4c905fd608b5483/html5/thumbnails/28.jpg)
Tuesday, April 30, 13
![Page 29: rq talk](https://reader034.fdocuments.us/reader034/viewer/2022042814/5554af54b4c905fd608b5483/html5/thumbnails/29.jpg)
We’re Hiring!http://stamps.co.id
Tuesday, April 30, 13
![Page 30: rq talk](https://reader034.fdocuments.us/reader034/viewer/2022042814/5554af54b4c905fd608b5483/html5/thumbnails/30.jpg)
Questions? [email protected]
http://twitter.com/selwin
http://github.com/selwin
Tuesday, April 30, 13