Manakah dari Lighttpd dan Nginx, berdasarkan pengalaman Anda, lebih cocok untuk Django? Saya telah menggunakan keduanya dan hampir tidak dapat melihat perbedaan sama sekali, mereka hanya berfungsi dengan baik ... Apakah ada kasus penggunaan ketika salah satu dari mereka bertindak jauh lebih baik daripada yang lain? Saat menjawab, harap perhatikan kesederhanaan konfigurasi dan efisiensi.
Setup saya yang biasa adalah memiliki proses Django FCGI terpisah (seperti di ./manage.py runfcgi daemonize=false port=8098 host=127.0.0.1
) diluncurkan melalui daemontools atau init.d
script dan lighty / nginx bertindak sebagai proxy terbalik.
Oh, dan jika Anda merasa server http lain jauh lebih baik untuk Django daripada Lighty dan Nginx, jangan ragu untuk membagikan pendapat Anda.
Jawaban:
Baik Nginx dan Lighttpd adalah pilihan yang lebih baik daripada apache ketika menggunakan mereka sebagai proksi terbalik untuk Django, Rails, dll. Keduanya mendukung proksi FastCGI dan Http. Keduanya menawarkan model berbasis pilihan tunggal () (atau lebih baik) untuk penggunaan sumber daya yang efisien.
Namun suara saya masuk ke Nginx, ia memiliki basis pengguna yang sangat aktif (saat ini merupakan kesayangan set Ruby on Rails), dan sedang dalam pengembangan aktif. Lighttpd bisa disangka telah mati, 2+ tahun dan kami masih menunggu beta 1,5.
sumber
mod_wsgi direkomendasikan cara untuk memasukkan aplikasi Django ke dalam produksi. Mod_wsgi Apache jauh lebih baik daripada nginx. Anda tidak dapat menemukan paket resmi (dalam distribusi Linux saat ini) untuk mod_wsgi nginx dan Anda perlu mengompilasinya sendiri. Saya suka nginx tetapi jika Anda ingin bermain aman, mainlah dengan Apache mod_wsgi.
sumber
mod-wsgi adalah cara terbaik untuk menjalankan aplikasi django dalam produksi, lebih sedikit daripada fastcgi dan tidak ada masalah dengan waktu mulai dll.
Mod-wsgi sebenarnya untuk apache, tetapi ada mod-wsgi lain untuk nginx. Apache yang brilian, saya tidak bisa mengomentari yang nginx.
Secara pribadi, saya akan menjauh dari lighttpd. Itu tidak memiliki stabilitas nginx, saya belum melihat kasus lighttpd yang tidak memiliki kebocoran memori.
Pada dasarnya, pilihan pertama saya adalah apache 2.2, pilihan kedua saya adalah nginx.
Jangan percaya hype tentang waktu respons dan skalabilitas. Sebenarnya, itu tidak masalah. (Google menggunakan Apache).
sumber
Juga, pertimbangkan untuk menggunakan Google App Engine. Anda dapat meng-host proyek Django Anda di sana secara gratis dan tidak perlu khawatir tentang memelihara infrastruktur server.
sumber