nDiki : Cache::Cache
Cache::Cache
Perl 用キャッシュ関連モジュールライブラリ。 Perl 5.005_03 でも利用可能(Cache-Cache-1.04)。
同様のライブラリとして Cache がある。
キャッシュ実装のバリエーション
ライブラリに含まれているキャッシュ実装としては以下のようなものがある。
| Cache::FileCache | ファイルベースのキャッシュ |
| Cache::MemoryCache | メモリキャッシュ |
| Cache::SharedMemoryCache | 共有メモリでのキャッシュ |
| Cache::SizeAwareFileCache | ファイルベースのキャッシュ (最大容量制限有) |
| Cache::SizeAwareMemoryCache | メモリキャッシュ (最大容量制限有) |
| Cache::SizeAwareSharedMemoryCache | 共有メモリでのキャッシュ (最大容量制限有) |
| Cache::NullCache | キャッシュをしない |
Cache::Cache を使う時にロック処理が必要?
Cache::FileCache系では、一時ファイルとアトミックな rename を使うことで書き込み時のロックを省略している。 Cache::MemoryCache系では、ハッシュへの書き込みのアトミック性によりロックは不要である。 Cache::SharedMemoryCache系では、バックエンドのIPC::ShareLiteのロック処理を使用している(Cache::Cache の README 参照)。
ということで Cache::Cache を利用する側は get/setのために自前でロックをする必要無し。
有効期限
デフォルトでは無期限である。 キャッシュ作成 (new) 時に default_expires_in オプションで変更することができる。
またデータのキャッシュ時 (set) 時に個別に指定することもできる。
有効期限は次の get 時にチェックされる。 キャッシュをスキャンし、有効期限切れのオブジェクトを削除するには Purge() / purge() を使用する。auto_purge_interval、auto_purge_on_set、auto_purge_on_get を使用することで、一定期間毎に自動的に削除させるようにすることもできる。
スポンサード リンク
Related term
2005年10月29日 (土)
■ 他の Web サイトの情報を URI::Fetch でキャッシュ付き取得

WiKicker や DiKicker でうまく他のサイトの情報を取り込んで利用できるようにしたい。 相手サイト・自サイトともに負荷をかけないように処理するには、うまくキャッシングする必要がある。
キャッシュ機能のあるPerl用HTTPユーザエージェントには
- WWW::Mechanize::Cached
- LWP::UserAgent::WithCache
- URI::Fetch
などがある。
@ WWW::Mechanize::Cached 1.32
WWW::Mechanize::Cached は1度取得したレスポンスを無条件に1日間キャッシュする。 WWW::Mechanize のサブクラスで、便利な機能が利用できるが、キャッシュは適当。
キャッシュは Cache::FileCache決め打ち。
@ LWP::UserAgent::WithCache 0.03
LWP::UserAgentのサブクラス。 Expires、Last-Modified、Etag ヘッダを考慮して処理する。
キャッシュは Cache::FileCache決め打ち。
@ URI::Fetch 0.04
fetch サブルーチンのみを提供するシンプルなモジュール。
キャッシュは Cache 系APIのモジュールを指定する。実際には Cache::Cache 系でもOK。 Last-Modified、Etag を考慮して処理する。
前回のアクセスから一定時間はキャッシュを返すようにする機能があり、RSS や Atom フィードを取得して利用するのに便利。
@ 今回は
URI::Fetch をチョイス。 our を使っているのでそのままでは Perl 5.005_03 では動かないが、use vars に書き換えれば問題なく動く。
- Perl CGI プログラムのテストには WWW::Mechanize::... (2006-02-18)
- Cache::Memcached 1.13 の Perl 5.005_03 対応 (2004-06-05)
- [ Perl ] Memcached を使ってみる (2004-01-12)
- Twitter ステータスを nDiki サイドバーに表示 (2007-11-09)
- さらにサーバ負荷状態悪化。対応に追われる。 (2006-03-04)
■よく検索されるキーワード
torrent(62) windows(62) perl(58) 提案書(48) 書き方(47) linux(44) アジェンダ(32) usb(29) 動画(27) x31(27) 使い方(27) 手帳(25) ssh(25) mp980(23) thinkpad(22) svn(21) ほぼ日手帳(21) java(21) インストール(20) 画像(20) debian(20) ドラマ(16) subversion(16) cvs(15) ubuntu(15) 設定(15) 秋葉原(14) gmail(13) ヨドバシ(13) 無料動画(13) tortoisesvn(13) dropbox(13) c#(12) .net(12) 壁紙(12) make(12) gnu(12) ノート(11) ヨドバシカメラ(11) a6(11) tc-1(11) ganttproject(11) 冷蔵庫(11) 宮根誠司(11) porter(11) 無印(10) フリー(10) 筆まめ(10) tar(10) 充電式カイロ(10) 方眼(9) パスワード(9) 日本語(9) visual(9) cwrsync(9) wiki(9) gimp(9) フォーマット(9) firefox(8) ボールペン(8) nullpointerexception(8) grub(8) skk(8) ppm(8) ご査収(8) ダウンロード(8) ケース(8) サンプル(8) 提案書の書き方(8) 無料(8) 無印良品(8) google(8) 2008(8) gtd(8) 3.5(8) framework(8) ツール(8) cgi(7) mew(7) バッグインバッグ(7)■注目キーワード
購入 買った 発売日 フリー 無料 価格 値段 作り方 選び方 使い方 方法 設定 サンプル ダウンロード 限定 在庫 予約 穴場 比較 検証 レビュー 感想 評価 評判 使用感 使ってみた 口コミ 噂 最新 MP3 動画 意味 お薦め お勧め おすすめ 便利 Blog ブログ mixi 修理 デザイン ビックカメラProcess Time: 0.049579s / load averages: 0.50, 0.25, 0.19
nDiki by WATANABE Yoshimasa (profile)
Powered by DiKicker
Base theme by Nana (for tDiary)



スポンサード リンク