私はDjango、PyPy、Psycopg2がすべて正しく動作することを理解しています。speed.pypy.orgは、CPythonと比べてパフォーマンスが大幅に向上しています。不利な点はありますか?PyPyの下でDjangoを実行する際の短所はありますか?
答えて
ライブラリのサポート。すべてのライブラリがPyPyと互換性があるわけではありません。
実際に
pypy manage.py test
を実行して壊れているかどうかを確認することをお勧めします。次に、依存関係を整列させる必要があることがわかります。http://reinout.vanrees.org/weblog/2011/06/06/django-and-pypy.html
ウェブサーバは
あなたはApacheでpypy使用することはできません。純粋なPythonのWebサーバー+ nginxを使用する必要があります。 あなたはそれをworking on uwsgiとするかもしれません。
PyPy wikiはDjangoを互換性のあるものとしてリストアップしていますが、Djangoがどれだけテストされたかについては詳細には触れていません。 CPythonの代わりにPyPyを実行する主要なDjangoデプロイメントは認識していません。より良い質問は、特にDjangoがCPythonで広範にテストされ展開されているため、DjangoアプリケーションのPyPyに切り替える理由です。
PyPyは、計算集約型のタスクに適しています。 Webアプリケーションは通常はありません。 Djangoのベンチマークは、基本的にはCPUを大量に消費するタスクであるテンプレートレンダリングベンチマークです。これは、ボトルネックがI/Oである傾向のあるほとんどのWebアプリケーションの代表ではありません。そのため、PyPyはあなたのサイトを信じさせるほど多くの速度を上げません。
"ウェブサーバーはIOが制限されていますが、遅い言語について心配しないでください"という誤解は明らかに生きています。私は、データベースに重いウェブサイトで費やされた時間の50%が実際に処理中であることを知っています。テンプレートにはレンダリングが必要ですが、クエリーセットにはディープコピーが必要です。責任ある開発者は、DBレイヤーだけでなく、あらゆる場所でパフォーマンスの向上を目指すべきです。 – Thomas
"これは、ボトルネックがI/Oになりがちな*ほとんどの* Webアプリケーションの代表ではありません。"いつものように、ボトルネックがどこにあるかを把握するためにプロファイルを作成する必要があります。それはあなたが最適化されたコードを書くことについて心配する必要がないということを意味しません。責任ある開発者は、アプリのクリティカルパスを最適化します。テンプレートレンダリングベンチマークに基づいた実験的なPythonランタイムに切り替えることはほとんど責任がありません! – CadentOrange
私はcpython2とpypyのいくつかのテストを行いました。パフォーマンステストは、pypyのほうがはるかに高速です。一方、djangoのdbクエリは、cpythonでより速く処理されます。 – francescortiz
- 1. Webアプリケーションからバッチファイルを実行する際の短所はありますか?
- 2. EOFを使用する際の短所はありますか?
- 3. 今後resqueジョブを実行する際の短所は何か?
- 4. JavaScriptコードを分離する際の短所はありますか?
- 5. Hibernate:イベントリスナまたはインターセプタ、実際にはどのような長所と短所がありますか?
- 6. 複数のサブドメインでDjangoセッションを共有する際の短所
- 7. 同じ学習率でより多くのエポックを実行することの短所はありますか?
- 8. ng-styleを使用する際の短所は何ですか?
- 9. StringBuilderを使用する際の短所は何ですか?
- 10. シンボルを破棄する際の短所は何ですか?
- 11. スタイリングの目的で空のdivタグを使用する際の短所はありますか?
- 12. IQueryableを使用する際の短所!
- 13. Android APIよりJQTouch/Phonegapを使用する際の短所はありますか?
- 14. Linux上で静的にリンクされたアプリケーションを使用する際の短所はありますか?
- 15. GC.disableのパフォーマンス上の短所はありますか?
- 16. ASP.net MVC Webforms View Engineの短所はありますか?
- 17. 大きなセッションタイムアウト値の短所はありますか?
- 18. 「Access-Control-Allow-Origin:*」の短所はありますか?
- 19. 実際のデータベースでDjango py.testを実行しますか?
- 20. 実際にCpython、IronPython、PyPyとは何ですか?
- 21. SQL Serverと比べて、dotConnect for Oracleを使用する際の短所はありますか?
- 22. proto3の文字列として小数点以下を格納する際の短所は何ですか?
- 23. symfony2でdjangoのsecurity.ymlの能力を実行するミドルウェアはありますか?
- 24. Javaの実行時間の下限はありますか?
- 25. 既存のデータベースのORMを手動で作成する長所と短所はありますか?
- 26. さまざまなPython実装の長所と短所は何ですか?
- 27. ctimeのtzsetを使用する際の短所は何ですか?
- 28. Perl DBM実装の長所と短所はありますか? (GDBM、Berkeley DBなど)
- 29. PyPyのsys.getsizeof()の代替手段はありますか?
- 30. Djangoのfastcgiサーバを使用することの短所は何ですか
私はpypy + gunicorn + django + nginxを使い、それは魅力的に機能します。 –