Rozumiem, że Django, PyPy i Psycopg2 działają poprawnie razem, a speed.pypy.org twierdzi, że poprawia wydajność w porównaniu z CPython. Czy są jakieś wady?Wady uruchamiania Django w PyPy?
Odpowiedz
Obsługa bibliotek. Nie wszystkie biblioteki są kompatybilne z PyPy.
Najlepiej jest spróbować uruchomić
pypy manage.py test
i sprawdzić, czy się zepsuł. Wtedy wiesz, które zależności muszą zostać dopasowane.http://reinout.vanrees.org/weblog/2011/06/06/django-and-pypy.html
serwerach
Nie można używać pypy z Apache. Musisz użyć czysto-pythonowego serwera WWW + nginx. Możesz dostać to working on uwsgi.
PyPy wiki podaje listę Django jako zgodną, ale nie zawiera szczegółowych informacji na temat ilości testowanego Django. Nie jestem świadomy żadnego większego wdrożenia Django, które uruchamia PyPy zamiast CPython. Lepsze pytanie brzmi: dlaczego chcesz przełączyć się na PyPy dla aplikacji Django, zwłaszcza że Django zostało szeroko przetestowane i wdrożone w CPython.
PyPy nadaje się do zadań wymagających dużej mocy obliczeniowej. Aplikacje internetowe zazwyczaj nie są. Test porównawczy Django, na którym opierają swoje numery wydajności, jest w zasadzie wzorcem do renderowania szablonu, który jest zadaniem intensywnie obciążającym procesor. Nie jest to reprezentatywne dla większości aplikacji internetowych, w których szyjka butelki jest zwykle wejściem/wyjściem. W związku z tym PyPy może nie przyspieszyć Twojej witryny tak bardzo, jak te wykresy pozwalają ci uwierzyć.
"Webserwery są ograniczone, nie przejmuj się powolnymi językami", a błąd jest prawdopodobnie żywy i dobrze. Wiem, że 50% czasu spędzonego w mojej ciężkiej bazie danych JEST RZECZYWISTYM CZASEM PROCESOWYM PYTHON. Szablony wymagają renderowania, kwerendy wymagają głębszego kopiowania. Odpowiedzialni programiści powinni szukać ulepszeń wydajności wszędzie, nie tylko w warstwie DB. – Thomas
"To nie jest reprezentant * najbardziej * aplikacji internetowych, gdzie szyjka butelki ma tendencję do bycia I/O." Jak zawsze potrzebujesz profilu, aby dowiedzieć się, gdzie znajdują się wąskie gardła. Nigdzie nie oznacza to, że nie musisz się martwić o pisanie zoptymalizowanego kodu. Odpowiedzialni programiści optymalizują krytyczne ścieżki swojej aplikacji. Przejście na eksperymentalne środowisko uruchomieniowe Pythona oparte na benchmarku renderowania szablonów nie jest odpowiedzialne! – CadentOrange
Zrobiłem kilka testów cpython2 vs pypy. Testy wydajności działają znacznie szybciej dzięki programowi pypy. Z drugiej strony, strony django z zapytaniami db, gdzie serwują znacznie szybciej z cpython. – francescortiz
- 1. Optymalizacja dla pypy
- 2. Kompilacja PyPy do Exe
- 3. moduł regex z pypy
- 4. Wady NIO w ActiveMQ
- 5. Jak ignorować katalogi podczas uruchamiania kolekcji Django?
- 6. Jak uruchomić ipython z pypy?
- 7. Django ignoruje router podczas uruchamiania testów?
- 8. Jak korzystać z PyPy w systemie Windows?
- 9. Instalowanie jajek w języku Python pod PyPy
- 10. Wady CouchDB
- 11. jak stworzyć virtualenv z pypy?
- 12. PyCharm and Pypy - Nierozwiązana referencja
- 13. Wady metod statycznych w PHP
- 14. Korzyści/wady budowania jedności?
- 15. Wady obiektów niezmiennych
- 16. glPixelStorei (GL_UNPACK_ALIGNMENT, 1) Wady?
- 17. Zalety i wady BPMN?
- 18. Dlaczego Deque Pypy jest tak wolny?
- 19. wady lub ograniczenia plv8?
- 20. Jakiekolwiek wady wydajności GC?
- 21. Wady blokowania wiersza MySQL
- 22. Wykorzystanie pamięci pypy rośnie na zawsze?
- 23. Zalety i wady Haskella
- 24. Zalety i wady CardView
- 25. Aktualizacja dynamiczna NHibernate Wady?
- 26. Resetowanie głównego CSS - wady?
- 27. Używanie modułu MySQLdb z kompilatorem Pypy
- 28. Który profiler pamięci PyPy jest zalecany?
- 29. Czy można uruchomić jądro Pypy w notebooku Jupyter?
- 30. Broken pipe Błąd podczas uruchamiania Django test z selen
Używam pypy + gunicorn + django + nginx i działa jak urok. –