Вопрос

Я хочу реализовать систему кеширования на диске. Идея состоит в том, чтобы выделить определенное количество дискового пространства и сохранить, как будто большие данные вписываются там, отбрасывая старые файлы, так как у меня нет места.

LRU - мой первый выбор стратегии делеции, но я готов согласиться на FIFO. При гугерах для алгоритмов кэша, обсуждение, похоже, доминирует в кэшировании на основе памяти. Memcached., Например, было бы именно то, что я ищу, за исключением того, что это на основе памяти. С другой стороны, такие решения, как MemcachedB, CouchDB и т. Д., Кажется, не имеют возможностей LRU.

Ближайшая вещь, которую я нашел, это Squid Proxy. Системы хранения серверов. Касс Похоже, является наиболее задокументированным, но использовать его, вероятно, придется переписать его как автономный процесс (или библиотека).

Какой проект или (Java / Python) библиотека я могу использовать для такой вещи?

РЕДАКТИРОВАТЬ: Нашел это Похожие вопросы.

Это было полезно?

Решение

Я думаю, что вся библиотека кэширования памяти имеет возможность сохранять или расширить на диске. По крайней мере, Ehcache делает.

Таким образом, вы можете просто настроить библиотеку кеша для записи на диске (либо потому, что вы хотите, чтобы данные были постоянно, или для расширения размера кэша над ограничениями памяти).

Обратите внимание, что Ehcache имеет возможности LRU.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top