Об этом проекте

Caffeine — это библиотека Java для создания кэшей в памяти, распространяемая под лицензией Apache-2.0. Её API `Caffeine.newBuilder()` позволяет разработчикам настраивать кэши с указанием максимального размера, истечения срока действия после записи или доступа, обновления после записи, а также функции загрузки для пропусков кэша. Документированные возможности включают: - Синхронную или асинхронную автоматическую загрузку записей - Вытеснение на основе размера с учётом частоты и давности использования при превышении максимума - Истечение срока действия на основе времени последнего доступа или последней записи - Асинхронное обновление при поступлении первого устаревшего запроса - Слабые ключи и слабые или мягкие значения - Уведомления о вытесненных или иным образом удалённых записях - Передачу записей во внешний ресурс - Статистику доступа к кэшу Проект предоставляет опциональные модули адаптеров для JSR-107 JCache и Guava, а также модуль симуляции. В документации описаны интеграции с сообществом: Spring, Play Framework, Micronaut, Kotlin Coroutines, Bootique, Quarkus, Camel, обёртки для Scala и Kotlin, а также JHipster. В README также перечислены инфраструктурные и системы данных, использующие Caffeine, такие как Cassandra, Kafka, HBase, Solr, Infinispan, Neo4j и Druid. Caffeine распространяется через Maven Central и Gradle. В README указано, что версия 3.x предназначена для Java 11 и выше, а 2.x поддерживает более старые версии Java. Из репозитория доступны ссылки на руководство пользователя, документацию API, примечания к выпускам, заметки о бенчмарках и статьи по архитектуре.