3

ディスクベースのキャッシュシステムを実装しようとしています。アイデアは、一定量のディスク領域を割り当て、そこに収まるデータ量を保存し、領域が不足すると古いファイルを破棄することです。

LRU は私の最初の削除戦略の選択肢ですが、FIFO で解決しても構わないと思っています。キャッシュ アルゴリズムをグーグルで検索すると、メモリ ベースのキャッシュが議論の中心になっているようです。たとえば、 Memcachedは、メモリベースであることを除いて、まさに私が探しているものです。一方、Memcachedb、couchdb などのソリューションには LRU 機能がないようです。

私が見つけた最も近いものは、squid プロキシサーバー ストレージ システムです。COSSは最も文書化されているもののようですが、これを使用するには、スタンドアロン プロセス (またはライブラリ) として書き直す必要があるでしょう。

そのようなことに使用できるプロジェクトまたは (java/python) ライブラリは何ですか?

編集:この関連する質問が見つかりました。

4

1 に答える 1

2

すべてのメモリキャッシュライブラリには、ディスク上で永続化または拡張するオプションがあると思います。少なくとも、EHCache はそうします。

そのため、ディスクに書き込むようにキャッシュ ライブラリを構成するだけです (データを永続化するため、またはメモリ制限を超えてキャッシュ サイズを拡張するため)。

EhCache には LRU 機能があることに注意してください。

于 2010-02-01T09:46:33.420 に答える