Drkcore

07 12 2005 Tweet

dynamic_cacheプラグイン

昨日は、負荷がかかったみたいで、サーバーが落ちてたようです。外からblosxomのエントリの編集ができないのも痛いんだけど、もっと痛いのは

davとかsubversionも使えなくなることだ

あーblosxomの負荷を軽くしなければ、というわけでLittleStoryからdynamic_cacheプラグインをダウンロードしてきて入れてみた。

RSSとかトップページにキャッシュが効いてくれるとやっぱ負荷も軽減されるんではなかろうかということで、abでベンチマークを取ってみた。

最初にキャッシュが利いてないとこんなに遅いです。

# ab -n 30 -c 3 /index.rss10 Requests per second: 0.32 [#/sec] (mean) Time per request: 9281.973 [ms] (mean) Time per request: 3093.991 [ms] (mean, across all concurrent requests) Transfer rate: 4.34 [Kbytes/sec] received

dynamic_cacheプラグインを導入すると結構速くなったので、結構満足します。がこれでも、ロボットに大暴れされるとツライよなぁ。

# ab -n 30 -c 3 /index.rss10 Requests per second: 0.93 [#/sec] (mean) Time per request: 3224.369 [ms] (mean) Time per request: 1074.790 [ms] (mean, across all concurrent requests) Transfer rate: 12.50 [Kbytes/sec] received

試しに、RSSを静的に出力してCGIじゃなくてアクセスすると格段に違います。CGIの起動の部分を何とかすればもっと速くなるのか?ってことでSpeedyCGIなんかもそそられます。

# ab -n 30 -c 3 /index.rss10 Requests per second: 223.46 [#/sec] (mean) Time per request: 13.425 [ms] (mean) Time per request: 4.475 [ms] (mean, across all concurrent requests) Transfer rate: 3128.40 [Kbytes/sec] received

ただし、うちだとファイルが存在する場合にはそっちを見にいくように.htaccessを書いているので、うまく静的なレンダリングを織り交ぜてやれば、負荷を下げられるのではなかろうか?

RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ blosxom.cgi/$1 [L,QSA]

試しに、dynamic_cacheのキャッシュ先を、blosxom.cgi/以下に重なるように設定して、キャッシュではなくて半静的なレンダリングをしてみたが、index.htmlがらみでちょっと不具合チックな部分があるようです。あとrecache=allでばっさりrmされたりとか。

なんで、rssなんかは静的レンダリングさせといて、他のは普通にdynamic_cacheに任せつつ、speedyCGIなんかを入れてCGIスクリプトを常駐させて実行するようにするのがいいような気もする。

一番いいのはやっぱCGIが必要ない部分はCGIを使わないことだろうからなぁ。

About

  • もう5年目(wishlistありマス♡)
  • 最近はPythonとDeepLearning
  • 日本酒自粛中
  • ドラムンベースからミニマルまで
  • ポケモンGOゆるめ

Tag

Python Deep Learning javascript chemoinformatics Emacs sake and more...

Ad

© kzfm 2003-2021