Я хочу кэшировать объекты в памяти. Требования следующие:
- Каждая запись/объект связана с уникальным ключом.
- 400-500 записей/объектов для хранения. Если количество записей превысит указанный лимит, старые записи следует удалить.
- Записи не должны храниться более 2 минут.
- Должен уменьшаться, когда JVM не хватает памяти (вид слабой ссылки).
- Стороннюю библиотеку нельзя использовать, потому что это небольшой модуль, и цель состоит в том, чтобы просто уменьшить ненужный доступ к сети.
- Больше пишет, меньше читает
Здесь также важна безопасность, потому что мы собираемся кэшировать некоторые конфиденциальные данные. Эти данные будут кэшироваться в памяти. Должен ли я действительно беспокоиться о безопасности и шифровать данные?
Я ищу класс Java, который обеспечивает аналогичную функциональность.
В настоящее время я думаю о расширении WeakHashMap
и реализации различных частных/общедоступных методов для соблюдения требований.
Если у вас есть другая идея, пожалуйста, поделитесь здесь.
Third party library shouldn't be use.
Странное требование.. - person Brendan Long   schedule 18.09.2012