2011-08-29 17 views
8

Bir python WSGI uygulaması için bir crontab için biraz karmaşık olan bir dizi bakım görevim var (işlerin, iş kuyruğu boyutundan türetilen frekanslarda çalıştırılması, bir bağlantı havuzunu bir grup EC2 örneğine yönetmesi gerekir) , vb).Uzun süren, olaya dayalı bir python programı nasıl uygulanır?

Uzun süren, olaya dayalı bir python programını nasıl uygulamalıyım? Daha önce bu işlevselliğe hiç ihtiyaç duymadım, bu yüzden ne yapacağımı bilmiyorum.

+1

http://twistedmatrix.com/trac/? – zengr

+0

@zengr, twisted ve python-daemon akla gelen ilk iki şeydir, ama bir şey yapmaya başlamadan önce standart kütüphanede bir şey eksik olup olmadığını görmek istedim. Hala python için biraz yeniyim. –

cevap

7

Büyük, modern python sitelerinin çoğu, bu tür işler için Celery kullanıyor. Görevlerin zamanlamasını da destekleyen dağıtılmış bir görev sırasıdır.

Küçük bir site için muhtemelen biraz ağır olsa da, sizinle birlikte büyüyecektir. Kısa bir süre içinde kendimi (Tavşan'ı) uygulamaya çalışıyorum.

Kısa süre önce, daha az, daha uzun, toplu işleme türü işlerine odaklanan django kullanıcıları, django-tasks için başka bir seçenek buldum. Zeromq kullanılarak django-ztask da bulunmaktadır.

Ek: python bindings numaralı gearman ile karşılaştım.

+0

Ah, görünüşe göre aradığım google sorgusu "python asynchronous task queue" idi. :) –

İlgili konular