2012-12-13 16 views
5

Ölçeklenebilirlik sunan ve Tornado (Facebook FriendFeed tarafından kullanılan) veya Gevent ile çalışmaya karar veren python web sunucularına bakıyorum. Bu konuda oldukça yeni olduğum için, Tornado ve Gevent kısa listesinin sonuna Benchmark of Python Web Servers numaralı telefondan güvendim. Dahası, daha fazla araştırma yaptıktan sonra şunu öğrendim:Gevent + gunicorn üretimde ölçeklenebilir ve sabit mi?

  • Gevent bağımsız bir web sunucusu değil, bir web sunucusu olarak libevent veya gunicorn kullanmamız gerekiyor.
  • libevent, SSL, akış, canlı tutma ve websockets gibi desteklenmeyen pitfalls numaralı bağlantıya sahiptir.
  • Birlikte kullanılan gevent ve gunicorn'un hangi belgeleri kullanabileceğini gösteren bir karşılaştırma sonucu mevcut değil.
  • gevent'in yazarı, herkesin gerçek dağıtım için gevent + gunicorn'u kullanmasını tavsiye etti.

Benim gereksinimleri:

  • bir derece ölçeklenebilir asenkron piton web sunucusu.
  • SSL Desteği dahildir.

Çünkü onun greenlet bazlı yaklaşımın gevent doğru özellikle daha eğilimli duyuyorum. Ben sadece gunncorn + gevent iyi bir seçim olduğunu kanıtlamak için bazı zor gerçekleri istiyorum ve Tornado ile ligde, son derece ölçeklenebilir. Veya benim gereksinimleri karşılayan başka bir python web sunucusu var mı?

Bana doğru yönde işaret et.

cevap

12

bu yazı gibi, Gunicorn içindedir beta (sürüm 0.16) ve Gevent 1.0 (Announcement on Google Groups) için sürüm adayı sahiptir, nedenle API değişiklikleri beklemek makul olabilir (daha az Gevent için çok)

Gunicorn + Gevent uyumsuz bir piton web için iyi bir seçimdir, bir üretim dağıtım ile iyi olmalı başvurunuzu kırabilir değişiklikler için: Yani (gunicorn, gevent burada) posta listeleri izlemek sürece, söz konusu sunucusu. Sen Tornado ile karşılaştırmak için kendi testlerini gerçekleştirmelidir. Başvurunuz karşılaştırma tabi olanlar gibi davranabilir değil çünkü kamuya açık benchmarking testleri yanıltıcı olabilir.

SSL desteği için, hem Gunicorn hem de Tornado, bunları nginx gibi bir ters proxy'nin arkasında çalıştırmanızı önerir. bir ters proxy arkasında onları çalıştıran diğer avantajları slow clients ele alınmasını iyileştirilmesini, ve kötü HTTP

+2

Mükemmel cevap ister. Gunicorn artık SSL desteği ile birlikte geliyor: o * Bugün * okuyabilir olanlar olsa sadece bir düzenleme. – Phil