Remoção de cache
Para cada cache, o tamanho do cache deve ser estimado antecipadamente, considerando cuidadosamente o uso de dados pelo seu aplicativo. No entanto, seu cache tem limitações de armazenamento e se os dados residirem no cache para sempre, ele acabará ficando cheio. Para lidar com isso, NCacheO recurso Cache Eviction do pode ser utilizado.
No Eviction, quando seu cache estiver cheio, NCache decide despejar seus dados existentes com base no uso ou prioridade para acomodar novos dados recebidos. A remoção suavizará as operações de cache, mantendo o tamanho do cache limitado, removendo uma porcentagem configurada de dados.
NCache fornece políticas diferentes para despejo. Estas políticas decidem quais dados serão removidos quando o cache estiver cheio:
Remoção de cache baseada em prioridade
Note
Este recurso também está disponível em NCache Professional.
Esta política de remoção de cache permite que o cache remova primeiro os dados menos importantes. Esta política de despejo é sua escolha óbvia se você puder classificar os dados do cache em diferentes prioridades. A prioridade é especificada com o item de cache ao adicioná-lo ao cache. Você pode especificar qualquer uma das prioridades dos 6 níveis de prioridades a seguir:
- Baixo
- abaixo do normal
- Normal
- acima do normal
- Alta
- Não removível - Este nível de prioridade especifica que o item de cache não deve ser removido e só pode ser configurado usando o NCache API.
Menos usado recentemente (LRU)
Esta política de remoção permite que os caches removam dados que não estão mais em uso. Os dados são removidos com base na hora do último acesso. Os dados que foram acessados há muito tempo são os candidatos mais adequados para despejo em comparação com os dados que foram acessados recentemente. O tempo de acesso é atualizado quando os dados são buscados/atualizados do cache.
Usado com menos frequência (LFU)
Esta política de despejo permite que o cache expulse os dados que são usados com menos frequência. Os dados são despejados com base na frequência de seu uso. Por exemplo, se um item for acessado 5 vezes, então ele é um candidato mais adequado para despejo do que um item acessado 20 vezes.
Não despeje
Note
Este recurso está disponível apenas em NCache Enterprise.
Juntamente com diferentes políticas, existe outra opção para desativar o despejo. Nesse caso, quando o cache fica cheio, ele não remove nenhum dado enquanto todas as solicitações de adição de dados recebidas são rejeitadas.
Taxa de despejo
Você também pode especificar a taxa de remoção, ou seja, em qual porcentagem os dados devem ser removidos do cache. A remoção remove apenas a porcentagem configurada de dados do cache, uma vez que a remoção é acionada.
Aviso de cache quase cheio
Quando o cache estiver cerca de 80% cheio e precisar ser removido, NCache registra eventos no Visualizador de Eventos no Windows e em arquivos de log de cache.
Remoção em massa de dados
O número de itens de cache a serem removidos durante a remoção pode ser enorme dependendo do tamanho do cache e da taxa de remoção. É por isso que o despejo remove dados em massa. O tamanho da operação em massa é configurável através do arquivo de configuração do servidor de cache encontrado no arquivo NCache instalação da seguinte forma:
- . NET: Alachisoft.NCache.Service.exe.config localizado na %NCHOME%/bin/serviço
- .NET Core Windows: Alachisoft.NCache.Service.dll.config localizado na %NCHOME%/bin/serviço
- .NET Core Linux: Alachisoft.NCache.Daemon.dll.config localizado na / opt /ncache/bin/serviço
- Janelas Java: Alachisoft.NCache.Service.dll.config localizado na %NCHOME%/bin/serviço
- JavaLinux: Alachisoft.NCache.Daemon.dll.config localizado na / opt /ncache/bin/serviço
Da mesma forma, você também pode configurar o atraso entre duas operações de remoção em massa com a ajuda de um arquivo de configuração de serviço.
Despejo em ambiente clusterizado
No Particionado e os votos de Réplica de partição topologias, a distribuição de dados é baseada em um algoritmo de hash. Cada nó possui dados divididos, portanto cada nó é responsável por despejar seus dados. No entanto, o nó de réplica em Partition-Replica não despeja os dados por si só - os dados são removidos automaticamente da réplica quando são removidos do nó ativo.
No Replicado topologia, cada nó tem o mesmo conjunto de dados, portanto, apenas o coordenador do cluster é responsável pelo despejo.
No Espelho O cache possui apenas dois nós, um ativo e outro passivo. Assim, o nó ativo é responsável por realizar o despejo de todo o cache.
Veja também
Política de despejo
Indexação
Versão de classe
Compartilhamento de dados em tempo de execução