querendo uma boa solução de memória + solução de cache de disco
-
22-09-2019 - |
Pergunta
Atualmente, estou armazenando páginas HTML geradas em um cache na memória. Isso funciona muito bem, no entanto, estou querendo aumentar a capacidade de armazenamento do cache além da memória disponível. O que eu realmente gostaria é:
- Semântica Memcached (ou seja, não é confiável, apenas um cache)
- API Memcached preferida (mas não necessária)
- Grande cache de primeiro nível na memória (MRU)
- enorme cache de segundo nível no disco (principal)
- despejado do cache no disco no máximo de armazenamento usando LRU ou LFU
- implementação comprovada
Ao procurar uma solução, encontrei as seguintes soluções, mas todas elas sentem falta das minhas marcas de alguma forma. Alguém sabe de:
- Outras opções que eu não considerei
- uma maneira de fazer o memcachedb fazer despejos
Já considerado são:
- Melhor ajuste, mas não faz despejos: explicitamente "não é um cache"
- Não consigo ver nenhuma maneira de fazer despejos (manual ou automático)
- abandonado, sem apoio
- Não quero recomendá -lo aos clientes
- Não usa API do Memcache
- novo e não comprovado
- Não quero recomendá -lo aos clientes
Solução 2
Parece que as versões posteriores do memcachedb podem ser limpas manualmente, se desejar usar o rget comando e armazenando o tempo de expiração no registro de dados. Obviamente, isso significa que eu libero o servidor e a rede com solicitações para todo o bloco de dados, mesmo que eu queira apenas o tempo de expiração. Não é a melhor solução, mas aparentemente a única atualmente disponível.
Outras dicas
Eu trabalhei com Ehcache E funciona muito bem. Possui em cache de memória e armazenamento de disco com diferentes políticas de despejo. É uma biblioteca madura A com bom suporte. Há uma API em memcached que envolve o ehcache, especialmente desenvolvido para o suporte do GAE.
Atenciosamente, Jonathan.