Wdrażanie Django (fastcgi, apache mod wsgi, uwsgi, gunicorn)
Czy ktoś może wyjaśnić różnicę między apache mod_wsgi w trybie daemon a django fastcgi w trybie threaded. Myślę, że obaj używają wątków do współbieżności. Załóżmy, że używam nginx jako front endu Apache mod_wsgi.
UPDATE:
Porównuję django wbudowane w fastcgi (./manage.py method=threaded maxchildren=15) oraz mod_wsgi w trybie 'daemon' (WSGIDaemonProcess example threads=15). Obaj używają nici i zdobywają GIL, czy ja prawda?
UPDATAE 2:
Więc jeśli oba są podobne, czy są jakieś korzyści Apache mod_wsgi przeciwko fastcgi. Widzę takie plusy fastcgi:
- nie potrzebujemy apache
- zużywamy mniej pamięci RAM
- zauważyłem, że fastcgi ma mniejsze koszty
UPDATAE 3:
[[0]}jestem teraz zadowolony z nginx + uwsgi.UPDATAE 4:
Jestem teraz zadowolony z nginx + gunicorn:)
1 answers
Nie trzeba też używać wątków, aby móc obsługiwać żądania współbieżne. To zależy od tego, jak je skonfigurujesz. Możesz użyć wielu procesów, z których każdy jest pojedynczym gwintem, jeśli chcesz.
Aby dowiedzieć się więcej o modelach procesu / wątku mod_wsgi zobacz:
Http://code.google.com/p/modwsgi/wiki/ProcessesAndThreading
Modele są podobne, aczkolwiek mod_wsgi sam zajmuje się zarządzaniem procesami. Co dzieje się w FASTCGI w zakresie zarządzania procesami zależy od jakiego mechanizmu hostingu FASTCGI używasz i nie mówisz co to jest.
Kolejna różnica polega na tym, że FASTCGI nadal potrzebuje oddzielnego FastCGI do WSGI bridge, takiego jak flup, gdzie jako mod_wsgi nie potrzebuje żadnego mostu, ponieważ implementuje interfejs WSGI natywnie.
Wreszcie, proces FASTCGI to Exec / fork jakiegoś procesu nadzorcy lub serwera www, zależny od mechanizmu hostingu. W mod_wsgi procesy są tylko rozwidleniem procesu macierzystego Apache. Ogólnie to nie zbyt wiele materii, ale ma pewne implikacje.
Istnieją inne różnice, ale pojawiają się one bardziej, ponieważ mod_wsgi oferuje o wiele więcej funkcjonalności i możliwości konfiguracji niż mechanizm hostingu FASTCGI.
W każdym razie, pytanie jest trochę niejasne, czy możesz być bardziej szczegółowy o tym, co chcesz wiedzieć lub kontrast między nimi i dlaczego? Odpowiedź może być lepiej ukierunkowana.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-04-07 16:59:43