web-dev-qa-db-ja.com

PyPyでDjangoを実行することの欠点?

Django、PyPy、およびPsycopg2はすべて一緒に正しく動作することを理解しています。また、 speed.pypy.org はCPythonよりもパフォーマンスが大幅に向上していると主張しています。欠点はありますか?

34
jl6
  1. ライブラリのサポート。すべてのライブラリがPyPyと互換性があるわけではありません。

    あなたの最善の策は、実際に実行してみることですpypy manage.py testが壊れているかどうかを確認します。次に、どの依存関係を整合させる必要があるかがわかります。

    http://reinout.vanrees.org/weblog/2011/06/06/Django-and-pypy.html

  2. ウェブサーバー

    Apacheではpypyを使用できません。純粋なPythonウェブサーバー+ nginxを使用する必要があります。あなたはそれを得るかもしれません wsgiで作業中

39
Thomas

PyPy wiki はDjangoを互換性があるものとしてリストしますが、Djangoがどの程度テストされたかについては詳しく説明していません。私は、CPythonの代わりにPyPyを実行する主要なDjangoデプロイメントを認識していません。より良い質問は、なぜDjangoをPyPyに切り替えたいのかということです。アプリ、特にDjangoは、CPythonで広範囲にテストおよびデプロイされています。

PyPyは、計算量の多いタスクに適しています。通常、Webアプリはそうではありません。 Djangoパフォーマンス値の基準となるベンチマークは、本質的にはCPU集中型のタスクであるテンプレートレンダリングのベンチマークです。これは、ボトルネックがI/Oになる傾向があるほとんどのWebアプリの代表ではありません。したがって、PyPyは、これらのグラフがあなたを信じさせるほどにはサイトを高速化しない場合があります。

11
CadentOrange