SlideShare a Scribd company logo
1 of 10
Download to read offline
Celery


         Dağıtık iş yöneticisi
                       Emre Yılmaz
              Pyist – 17 Nisan 2011
Celery


 - Dağıtık çalışabilir

 - Non-Blocking

 - İş kuyruğu yöneticisi
Ne için lazımdı?


  - Request-response döngüsü içinde yeri olmayan
  işlerin hepsi

  - 3.parti API servisleriyle iletişim kuran kod blokları

  - Tekrar eden işler (cron replacement)

  - Daha iyi bir kullanıcı deneyimi için, kullanıcıyı
  bloklamayan “uzun süren işler, hesaplamalar”.

  - İşlerin tamamının queue(kuyruk)
  implementasyonu ile yönetilmesi.
Halk ekmeği kuyruğundan farklı!
Mimari
Öne çıkan özellikleri - 1


   Kuyruk yönetimi için birçok backend imkanı
    (rabbitmq, redis, mongodb, couchdb, SQL)

   Fault-tolerant yapı. İşçiler exception fırlatırsa,
    düşerse, data kaybı yaşanmaz.

   Dağıtık yapı. Birden fazla sunucuda birden fazla
    process aynı anda çalışabilir. Multi-processing
    desteği içinde.

   Güçlü monitoring/logging desteği.
Öne çıkan özellikleri - 2


   Framework bağımsız. Django desteği güçlü
    ama herhangi bir python uygulamasında
    kullanılabilir.

   Result Store desteği. (Database, MongoDB, Redis,
    Tokyo Tyrant, Cassandra, AMQP )

   Webhooks ile cross-platform çalışabilir.
Öne çıkan özellikleri - 3


   Periyodik işler. (cron is dead, long live celery!)

   İşler için retry desteği. (bir worker başarılı
    olana kadar 5 defa çalışmayı denesin.)

   Rate limit desteği. X işi için dakikada 200'den
    fazla iş alma!
I CAN HAZ SUPPORT?
Destek için


   Irc.freenode.net #celery

    (Ask solem / Ana geliştirici ile günün hangi saati
    olursa olursa olsun, soru-cevap imkanı.)
    “<asksol> brb, important mission it seems, I am currently the
    only one in that knows how to get the baby to sleep ;)”

   Email listesi
    groups.google.com/group/celery-users

   Emre Yılmaz?
    mail@emreyilmaz.me

More Related Content

Similar to Celery

Hackerspace PostgreSQL Atolyesi - 1
Hackerspace PostgreSQL Atolyesi - 1Hackerspace PostgreSQL Atolyesi - 1
Hackerspace PostgreSQL Atolyesi - 1Erkin Çakar
 
Node js part 1 shared
Node js part 1 sharedNode js part 1 shared
Node js part 1 sharedEngin Yelgen
 
Kod günleri veritabnı
Kod günleri veritabnıKod günleri veritabnı
Kod günleri veritabnıMustafa Tepe
 
Web İçin Teknoloji Geliştirmek
Web İçin Teknoloji GeliştirmekWeb İçin Teknoloji Geliştirmek
Web İçin Teknoloji GeliştirmekVolkan Özçelik
 
Büyük Kamu Projelerinde PHP Kullanımı @ Phpİst 2013
Büyük Kamu Projelerinde PHP Kullanımı @ Phpİst 2013Büyük Kamu Projelerinde PHP Kullanımı @ Phpİst 2013
Büyük Kamu Projelerinde PHP Kullanımı @ Phpİst 2013Hüseyin Mert
 
Log Yonetimi ve SIEM Kontrol Listesi
Log Yonetimi ve SIEM Kontrol Listesi Log Yonetimi ve SIEM Kontrol Listesi
Log Yonetimi ve SIEM Kontrol Listesi Ertugrul Akbas
 
C# 5 Yeni özellikler
C# 5 Yeni özelliklerC# 5 Yeni özellikler
C# 5 Yeni özelliklerErkan BALABAN
 
windows_process_management
windows_process_managementwindows_process_management
windows_process_managementguest0bd6e2
 
Apache Kafka - Yüksek Performanslı Dağıtık Mesajlaşma Sistemi - Türkçe
Apache Kafka - Yüksek Performanslı Dağıtık Mesajlaşma Sistemi - TürkçeApache Kafka - Yüksek Performanslı Dağıtık Mesajlaşma Sistemi - Türkçe
Apache Kafka - Yüksek Performanslı Dağıtık Mesajlaşma Sistemi - TürkçeEmre Akış
 
Edb kurumsal dunyaicinoneriler.101614
Edb kurumsal dunyaicinoneriler.101614Edb kurumsal dunyaicinoneriler.101614
Edb kurumsal dunyaicinoneriler.101614EDB
 
Meteor.js Hakkinda
Meteor.js HakkindaMeteor.js Hakkinda
Meteor.js HakkindaUğur Oruc
 
Dba için oracle veritabanı 11g yeni özellikleri
Dba için oracle veritabanı 11g yeni özellikleriDba için oracle veritabanı 11g yeni özellikleri
Dba için oracle veritabanı 11g yeni özellikleriZekeriya Besiroglu
 
AWS EMR - Amazon Elastic Map Reduce
AWS EMR - Amazon Elastic Map ReduceAWS EMR - Amazon Elastic Map Reduce
AWS EMR - Amazon Elastic Map ReduceSerkan Özal
 
Android mimari-cekirdek-binding-scheduler
Android mimari-cekirdek-binding-schedulerAndroid mimari-cekirdek-binding-scheduler
Android mimari-cekirdek-binding-schedulerErcan Pinar
 
Kurumsal Yazılım Geliştirme ve Visual Studio 2008
Kurumsal Yazılım Geliştirme ve Visual Studio 2008Kurumsal Yazılım Geliştirme ve Visual Studio 2008
Kurumsal Yazılım Geliştirme ve Visual Studio 2008mtcakmak
 
Log yönetimi ve siem projelerindeki en önemli kriter EPS değerleri
Log yönetimi ve siem projelerindeki en önemli kriter EPS değerleriLog yönetimi ve siem projelerindeki en önemli kriter EPS değerleri
Log yönetimi ve siem projelerindeki en önemli kriter EPS değerleriErtugrul Akbas
 

Similar to Celery (20)

Hackerspace PostgreSQL Atolyesi - 1
Hackerspace PostgreSQL Atolyesi - 1Hackerspace PostgreSQL Atolyesi - 1
Hackerspace PostgreSQL Atolyesi - 1
 
Node js part 1 shared
Node js part 1 sharedNode js part 1 shared
Node js part 1 shared
 
Kod günleri veritabnı
Kod günleri veritabnıKod günleri veritabnı
Kod günleri veritabnı
 
Kod günleri veritabnı
Kod günleri veritabnıKod günleri veritabnı
Kod günleri veritabnı
 
Web İçin Teknoloji Geliştirmek
Web İçin Teknoloji GeliştirmekWeb İçin Teknoloji Geliştirmek
Web İçin Teknoloji Geliştirmek
 
Nosql & MongoDB
Nosql & MongoDBNosql & MongoDB
Nosql & MongoDB
 
Büyük Kamu Projelerinde PHP Kullanımı @ Phpİst 2013
Büyük Kamu Projelerinde PHP Kullanımı @ Phpİst 2013Büyük Kamu Projelerinde PHP Kullanımı @ Phpİst 2013
Büyük Kamu Projelerinde PHP Kullanımı @ Phpİst 2013
 
Log Yonetimi ve SIEM Kontrol Listesi
Log Yonetimi ve SIEM Kontrol Listesi Log Yonetimi ve SIEM Kontrol Listesi
Log Yonetimi ve SIEM Kontrol Listesi
 
C# 5 Yeni özellikler
C# 5 Yeni özelliklerC# 5 Yeni özellikler
C# 5 Yeni özellikler
 
windows_process_management
windows_process_managementwindows_process_management
windows_process_management
 
Apache Kafka - Yüksek Performanslı Dağıtık Mesajlaşma Sistemi - Türkçe
Apache Kafka - Yüksek Performanslı Dağıtık Mesajlaşma Sistemi - TürkçeApache Kafka - Yüksek Performanslı Dağıtık Mesajlaşma Sistemi - Türkçe
Apache Kafka - Yüksek Performanslı Dağıtık Mesajlaşma Sistemi - Türkçe
 
Edb kurumsal dunyaicinoneriler.101614
Edb kurumsal dunyaicinoneriler.101614Edb kurumsal dunyaicinoneriler.101614
Edb kurumsal dunyaicinoneriler.101614
 
Meteor.js Hakkinda
Meteor.js HakkindaMeteor.js Hakkinda
Meteor.js Hakkinda
 
Dba için oracle veritabanı 11g yeni özellikleri
Dba için oracle veritabanı 11g yeni özellikleriDba için oracle veritabanı 11g yeni özellikleri
Dba için oracle veritabanı 11g yeni özellikleri
 
Ajansız log toplama
Ajansız log toplamaAjansız log toplama
Ajansız log toplama
 
AWS EMR - Amazon Elastic Map Reduce
AWS EMR - Amazon Elastic Map ReduceAWS EMR - Amazon Elastic Map Reduce
AWS EMR - Amazon Elastic Map Reduce
 
0439
04390439
0439
 
Android mimari-cekirdek-binding-scheduler
Android mimari-cekirdek-binding-schedulerAndroid mimari-cekirdek-binding-scheduler
Android mimari-cekirdek-binding-scheduler
 
Kurumsal Yazılım Geliştirme ve Visual Studio 2008
Kurumsal Yazılım Geliştirme ve Visual Studio 2008Kurumsal Yazılım Geliştirme ve Visual Studio 2008
Kurumsal Yazılım Geliştirme ve Visual Studio 2008
 
Log yönetimi ve siem projelerindeki en önemli kriter EPS değerleri
Log yönetimi ve siem projelerindeki en önemli kriter EPS değerleriLog yönetimi ve siem projelerindeki en önemli kriter EPS değerleri
Log yönetimi ve siem projelerindeki en önemli kriter EPS değerleri
 

Celery

  • 1. Celery Dağıtık iş yöneticisi Emre Yılmaz Pyist – 17 Nisan 2011
  • 2. Celery - Dağıtık çalışabilir - Non-Blocking - İş kuyruğu yöneticisi
  • 3. Ne için lazımdı? - Request-response döngüsü içinde yeri olmayan işlerin hepsi - 3.parti API servisleriyle iletişim kuran kod blokları - Tekrar eden işler (cron replacement) - Daha iyi bir kullanıcı deneyimi için, kullanıcıyı bloklamayan “uzun süren işler, hesaplamalar”. - İşlerin tamamının queue(kuyruk) implementasyonu ile yönetilmesi.
  • 6. Öne çıkan özellikleri - 1  Kuyruk yönetimi için birçok backend imkanı (rabbitmq, redis, mongodb, couchdb, SQL)  Fault-tolerant yapı. İşçiler exception fırlatırsa, düşerse, data kaybı yaşanmaz.  Dağıtık yapı. Birden fazla sunucuda birden fazla process aynı anda çalışabilir. Multi-processing desteği içinde.  Güçlü monitoring/logging desteği.
  • 7. Öne çıkan özellikleri - 2  Framework bağımsız. Django desteği güçlü ama herhangi bir python uygulamasında kullanılabilir.  Result Store desteği. (Database, MongoDB, Redis, Tokyo Tyrant, Cassandra, AMQP )  Webhooks ile cross-platform çalışabilir.
  • 8. Öne çıkan özellikleri - 3  Periyodik işler. (cron is dead, long live celery!)  İşler için retry desteği. (bir worker başarılı olana kadar 5 defa çalışmayı denesin.)  Rate limit desteği. X işi için dakikada 200'den fazla iş alma!
  • 9. I CAN HAZ SUPPORT?
  • 10. Destek için  Irc.freenode.net #celery (Ask solem / Ana geliştirici ile günün hangi saati olursa olursa olsun, soru-cevap imkanı.) “<asksol> brb, important mission it seems, I am currently the only one in that knows how to get the baby to sleep ;)”  Email listesi groups.google.com/group/celery-users  Emre Yılmaz? mail@emreyilmaz.me