blog.bulknews.netでmiyagawaさんがSimilarity Searchの結果をキャッシュするCGIを発表していました。
blog.bulknews.net: Similarity Search の負荷軽減に jscache
この問題を解消するために jscache という CGI スクリプトを作成しました(別名: くっつきキャッシュ)。このスクリプトのやっていることは単純で、リモートの js を取得して、サーバ側にキャッシュして保存。キャッシュ有効期間中は自分のサーバからコンテンツを吐き出すようにするものです。これならホスト側のサーバ負荷に表示が引きずられることはありません。
ならば、拙作のNP_SimilaritySearchにも同じ機能をつけてしまおう!という単純な発想でプラグインをアップデートしてみました。NP_SimilaritySearchではデータベースを利用してキャッシュを行います。
ダウンロードはこちら [NP_SimilaritySearch 1.1.0][143clicks]
※セキュリティバグをFixしたNP_SimilaritySearch v1.2をご利用ください。
これで大成功・・・といいたいところですが、確かに2回目からのアクセスは高速になったものの、最初のアクセスはかなり重い感じがします。これは回線の問題なのか、それとも実装の問題なのか・・・・。う?む。
(5/16追記)
時間帯によって重いことがあるようですがこれはbulkfeeds.netが混んでいるためのようです。
あと、くっつきキャッシュのようにもうちょっと汎用的なキャッシュPluginを作ったほうがイイのかな(NP_JsCacheみたいなやつ)。でも、そういうプラグインはもう既にありそうな気がするのでちょっと調べてみてからにしよう。
† 動作確認
Nucleus 3.0RCで行っています。
† 使い方
引数が1.0.0より変更されています。ご注意ください。
<%SimilaritySearch%>
<%SimilaritySearch(show ,表示数, スタイル, ヘッダなし指定, リンクのtarget)%>
† 変更点
・SimilaritySearchの取得結果がキャッシュが可能になりました。
(On/Off、有効期限等は自由に設定可能です。)
† Bugfix
・文字コードが適切に設定されない問題を修正しました。
コメントは承認後の表示となります。
OpenIDでログインすると、即時に公開されます。