スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Firefox4のキャッシュ設定について

404 Blog Not Found:備忘録 - Firefox 4 がキャッシュ使いすぎてたので を読んで、Firefox4からディスクキャッシュの仕組みが変わったのにはじめて気が付いた。

Firefox 4 Beta 9 – 素晴らしい機能を満載して登場 « Mozilla Developer Street (modest) によると、

Firefox 4 では、ユーザのハードディスク空き容量に応じてキャッシュサイズが動的に設定されるようになったため、キャッシュのヒット率が格段に上がります [キャッシュが見つからずに再度ファイルがダウンロードされてしまう状況が少なくなり、無駄なアクセスが減るということです]。

ということらしい。

Firefox4.0.1のソース nsCacheService.cpp を覗くと、キャッシュサイズは以下のような計算式で決定される。

ディスクの空きが
500MB以下 = 空き容量 x 4/10 MB
500MB~2.5GB = 250MB
2.5GB~5GB = 空き容量/10 MB
5~50GB = 625MB
50GB~75GB = 800MB
それ以上 = 1GB


このサイズを任意に設定したい場合は、環境設定 - 詳細 - ネットワークで、「キャッシュサイズを制限する」をONにして、キャッシュサイズを入力すればいい。
# 原文が Override auto cache management なので、「キャッシュサイズを制限する」は微妙に誤訳。
自動的に設定されてる数値を強制的に変更するのだから「指定する」と訳した方が実際の動作に近い。


計算式を眺める限りでは、これはFirefoxのキャッシュがディスクの空きを食いつぶさないようにするための機能らしい。
上記の説明を読んでも、キャッシュサイズが動的に設定される事と、キャッシュのヒット率が上がる事に何の関連性があるのかよく分からない。
キャッシュサイズが大きければそりゃヒット率は上がるだろうけど。上記の値はFirefox3のデフォルトよりかなり大きい気がする。

キャッシュフォルダが0~Fのディレクトリを持つようになったのは、恐らくキャッシュファイルへのアクセスを高速化するため。
WebKitを採用する前のiCabが同じ手法でキャッシュ読み出しを高速化していたので、古典的な方法なのだろう。

comment

管理者にだけメッセージを送る

プロフィール

waverider

Author:waverider

ああ、沖縄に行きたい…

最近の記事
カテゴリー
最近のトラックバック
ブログ内検索
RSSフィード
リンク
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。