2009-08-07 15 views
2

私はジャンゴでの遅さの問題を抱えていると私はソースを見つけることができません..私は私が間違ってやっているかわからないんだけど、プロジェクトに取り組んで少なくとも二回しながら、Djangoは本当に遅いとなりました。ジャンゴ極端な遅さ

要求が(〜15秒)を完了するために年齢をとり、開発サーバを起動するときに、モデルを検証することも、私が上で見られる多くの解決策を試してみた

(クアッドコア上12+秒...)非常に遅いですネットも同様の問題ではありますが、私には関係していないようです。

問題は、リクエストがApacheとmod_pythonのと本番サーバー上でも、非常に遅いので、Djangoの開発サーバから来ていないようです。

は、その後、私はそれがDNSの問題かもしれないと思ったが、Apache2の添え時にサイトが即座にロードします。

私は開発サーバーをstraceしようとしましたが、面白いものは見つかりませんでした。

がさえ(Djangoのアプリを除く)すべてのアプリケーションは何も変更しませんでしたコメント..モデルはまだ検証するために年齢を取ります。私が今見ているべき場所

私は本当に知らない...

誰もがアイデアを持って?

+0

多分あなたのマシンがコアメモリの外にありますか?または任意の他のプロセスはちょうどCPU時間を食べています... – Evgeny

答えて

6

this questionがserverfaultに投稿しているかもしれません。

大きな静的ファイルを提供している場合、レスポンスが遅くなります。

画像など、クライアントスクリプト、

をのようなあなたのmod_pythonのか、開発サーバープロセスの大きな静的ファイルは、あなたが直接それらのファイルを処理するために、運用サーバーを設定したい場合、これがどのモードでのケースになります - すなわちバイパスモジュール。

btw、mod_wsgiは現在、本番環境でdjangoを実行するのに好ましい方法です。

システムサービスやハードウェアに問題がある場合は、log messagesから手がかりを得ることができます。

+0

は、インストールされているモデルがDjangoのモデルのみである場合に、モデルを検証するのに15秒かかる理由をまだ説明していません。 大きなファイルを提供していません。最大のイメージは約100kで、データベースはあまり大きくありません。 –

+0

申し訳ありませんが、検証モデルはどういう意味ですか? – Evgeny

+0

$:〜/ www/project $ python manage.py runserver 127.0.0.1:8000 モデルの検証中... そこから、このメッセージが出るまでには10秒から15秒かかります。 Djangoバージョン1.1 SVN-11376、設定 'project.settings'を使用 開発サーバーは、http://127.0.0.1:8000/で実行しています。 CONTROL-Cを使用してサーバーを終了します。 –

0

それから私はApache2の添えとき 即座にそれがDNS 問題かもしれないと思ったが、サイトのロード。

どのようにあなたのDjangoのサイトを提供していますか? Apache2でmod_pythonを実行していると思いますか?

Apache2をコンピュータ上でローカルに実行して(MAMPまたはWAMPを使用してmod_pythonをインストールして)、それがまだ遅いかどうかを確認したい場合があります。あなたはそれがdjango/pythonの問題かApache/mod_pythonの問題かを知ることができます

+0

私はApache/mod_pythonとdjango devサーバーの両方で問題がLinux上でローカルに実行されています。 –

0

私はかつてDjangoサイトを開発するためにリモート編集を使用しました。検証プロセスは非常に遅いようです。しかし、他のすべてはあなたのようなものではありません。

それはそのディレクトリ内に.pyc変更/追加することはできませんWebサーバから来ています。

0

検証モデルが永遠に必要な場合は、他のものを検索しないでください。デュアルコアでは、私の最大規模のエンタープライズアプリケーション(+30モデル)のほうが検証に1秒もかかりません。

問題はモデルのどこかにある必要がありますが、ソースコードがないと問題の内容を伝えることが難しいです。

種類のよろしく、 マイケル

オープンソースコンサルタント

+1

MySQLの名前解決に問題がありました。 別のmysqlサーバを(同じlan上で)使用しようとしたときに問題が発生しました。 MySQLの名前解決を無効にしてIPだけを使用すると、私の問題が解決しました。 –

関連する問題