Sobre o projeto
Caffeine é uma biblioteca Java licenciada sob Apache-2.0 para construir caches em memória. Sua API `Caffeine.newBuilder()` permite aos desenvolvedores configurar caches com tamanho máximo, expiração após escrita ou acesso, refresh após escrita e uma função de carregamento para falhas de cache.
As capacidades documentadas incluem:
- Carregamento automático síncrono ou assíncrono de entradas
- Remoção baseada em tamanho usando frequência e recência quando um máximo é excedido
- Expiração baseada em tempo com base no último acesso ou última escrita
- Refresh assíncrono quando a primeira requisição obsoleta chega
- Chaves fracas e valores fracos ou suaves
- Notificações para entradas removidas por evicção ou outros motivos
- Propagação de escritas para um recurso externo
- Estatísticas de acesso ao cache
O projeto fornece módulos adaptadores opcionais JSR-107 JCache e Guava, além de um módulo de simulação. Ele documenta integrações da comunidade com Spring, Play Framework, Micronaut, Kotlin Coroutines, Bootique, Quarkus, Camel, wrappers Scala e Kotlin, e JHipster. O README também lista sistemas de infraestrutura e dados que o utilizam, como Cassandra, Kafka, HBase, Solr, Infinispan, Neo4j e Druid.
Caffeine é distribuído através do Maven Central e Gradle. O README afirma que a linha 3.x é para Java 11 e superior, enquanto 2.x suporta versões mais antigas do Java. Um guia do usuário, documentação da API, notas de lançamento, notas de benchmark e artigos de arquitetura estão vinculados no repositório.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.