Políticas de Despejo Utilizando o Coletor de Lixo do Cache de Disco
O coletor de lixo do cache de disco é responsável pelo despejo de objetos do cache de disco, com base em uma política especificada de despejo.
O coletor de lixo mantém uma determinada quantidade de espaço disponível em disco, que é administrada pelo atributo de configuração que limita a quantidade de espaço em disco utilizada para armazenamento em cache de objetos. Para ativar a política de despejo, ative as opções Limitar o tamanho de cache de disco em GB e/ou Limitar o tamanho de cache de disco em entradas no console administrativo.
- Nenhuma: Essa é a política padrão. Os objetos são despejados apenas quando expiram ou se estiverem invalidados.
- Aleatória: Os objetos expirados são removidos primeiro. Se o tamanho do disco ainda não tiver atingido o limite baixo, os objetos serão selecionados no cache de disco na ordem aleatória e serão removidos até que o limite baixo seja atingido.
- Tamanho: Os objetos expirados são removidos primeiro. Se o tamanho do disco ainda não tiver atingido o limite baixo, os objetos maiores serão removidos até que o limite baixo seja atingido.
Limitar o tamanho de cache de disco em GB e Limite Alto determinam quando acionar o despejo e quando o cache de disco é considerado quase cheio. É calculado como uma função do limite especificado pelo usuário. Se o limite especificado for 10 GB (3 GB é o mínimo), o subsistema de cache criará, inicialmente, três arquivos que podem chegar a 1 GB para os dados em cache, informações de ID de dependência e informações de gabarito. Sempre que for necessário mais espaço para conter os dados em cache, as informações de ID de dependência ou as informações de gabarito, será criado um novo arquivo. Cada um desses arquivos aumenta em incrementos de 1 GB até que o número total de arquivos criados seja igual ao cache de disco em GB (dez, neste caso). Embora o tamanho inicial do novo arquivo possa ser muito menor que 1 GB, o serviço de cache dinâmico sempre é arredondado para o próximo GB.
O despejo é acionado quando o tamanho dos dados em cache atinge o limite alto e continua até que o limite baixo seja atingido. O cálculo do tamanho dos dados em cache é dinâmico. A seguinte fórmula descreve como calcular o limite real do tamanho dos dados em cache:
limite do tamanho dos dados em cache = tamanho do cache de disco (em GB) - número de arquivos de dependência por GB - número de arquivos de modelo
Quando
o limite do tamanho dos dados em cache é definido, o ponto de acionamento é calculado da seguinte forma:ponto de acionamento do despejo = limite do tamanho dos dados em cache * limite alto
tamanho das entradas despejadas = tamanho dos dados em cache * (limite alto - limite baixo)
- Cenário 1
- Tamanho da cache de disco em GB = 10 GB
- Limite alto = 90%
- Limite baixo = 80%
Inicialmente, há um arquivo para o ID de dependência e o ID de gabarito.
No cenário anterior, o despejo inicia quando o tamanho de cache de dados atinge 7,2 GB e continua até que o cache de dados seja 6,4 GB (7,2 - 0,8).limite do tamanho dos dados em cache = 10-(1+1) = 8 GB ponto de acionamento do despejo = 8 * 90% = 7,2 GB tamanho das entradas despejadas = 8 * (90% - 80%) = 0,8 GB
- Cenário 2No cenário 1, se os arquivos de dependência chegarem a mais de 1 GB, será gerado um arquivo de dependência adicional. O ponto de acionamento do despejo é ativado dinamicamente da seguinte forma:
No cenário anterior, o despejo inicia quando o tamanho de cache de dados atinge 6,3 GB, e continua até que o cache de dados seja 5,6 GB (6,3 - 0,7).limite do tamanho dos dados em cache = 10 - (2+1) = 7 GB ponto de acionamento do despejo = 7 * 90% = 6,3 GB tamanho das entradas despejadas = 7 * (90% - 80%) = 0,7 GB
- Tamanho do cache de disco em entradas = 100000 GB
- Limite alto = 90%
- Limite baixo = 80%
ponto de acionamento do despejo = 100.000 * 90% = 90.000
número de entradas despejadas = 100.000 * (90% - 80%) = 10.000
Neste
cenário, o despejo é iniciado quando o número de entradas de cache atinge 90.000 e
10.000 entradas são despejadas do cache.