« 03.23 100円は安いようで高いかも | ココ | 03.26 Redmine x subversion(https) でレポジトリが更新されなくなった »

2009年3月25日

Python2.5 on さくら は too slow (2)   このエントリーを含むはてなブックマーク 

Pylonsをさくらで起動するのが遅くなったと気付いてからしばらく経って、どこに時間がかかってるのかを調べようかと思って、いろいろ見ていたんですが。

CGIのほうのsite.addsitedir()のディレクトリを2.5のsite-packagesにしてなかったということに気が付く。んがー。

いや、それでもやっぱり起動の時間は長いまま。サーバーがヒマなときには機嫌がいいのか比較的早くに表示してくれるけど、混んでる時間帯とか、さっぱり。

とりあえず、コンソールレベルでは環境変数のPYTHONPATHが自分のsite-packagesのみを指定しているとpython -vでものろりとした動きになっているのがtrussで見えてきた。というわけで、PYTHONPATHをオリジナルのsite-packagesも参照するように複数指定して(順番も注意して)、再度python -vをやってみたら、なんと起動がスムーズになった。

ビンゴです。

…でも、これってCGIの動きと直接関係ないんでない?

paster shell をやってみると、やっぱりpylonsパッケージ関連を読み込んでいるときにパッケージのロードがとてもゆったりしてる。paste.deployが問題なのかと思っていたら、それはそうではなかったことがインタープリタからインポートしたときに判明済み。

そこで、-vvでもっと詳しく見てみると、すごくたくさんメッセージが出てきた。どうやら、1つ1つのimportで、すべてのパッケージディレクトリを検索している模様。遅さの原因はこれ? なんでパッケージディレクトリを追加するときにファイルを全部キャッシュしとかんのやろう。

うーん。CGIでPylonsを起動しようとすると最低1分程度かかってしまう…。

By ただ at 21:09 カテゴリー ; プログラミングとか

« 03.23 100円は安いようで高いかも | 03月の記事 | 03.26 Redmine x subversion(https) でレポジトリが更新されなくなった »




トラックバック

このエントリーのトラックバックURL:
http://pinmarch.sakura.ne.jp/mt/mt-tb.cgi/1388

このリストは、次のエントリーを参照しています: Python2.5 on さくら は too slow (2):

» Python2.5 on さくら は too slow (3) from PinMarch
さくらの方が気づいてくれて、このサーバーの負荷許容量を上げてくれたのか、それとも...

トラックバック時刻: 2009年4月 8日 01:48