Percebi um comportamento estranho em um cluster de alta disponibilidade de 2 servidores e esperava que alguém pudesse confirmar minha suspeita ou talvez oferecer alguma outra explicação ... Aqui está minha configuração:
- Uma instalação do SQL 2012 SP1 com 2 servidores
- O SQL AlwaysOn HA foi ativado para alguns bancos de dados
- CPUs são 2.4GHz, 4 núcleos
- RAM é de 34 GB (é uma instância da AWS, daí o número ímpar)
- A utilização de recursos é relativamente baixa - cada servidor tem mais de 14 GB de memória livre e o SQL não tem limite de quanta memória usar
- O tempo de acesso ao disco é bom - raramente ultrapassando 15ms / leitura ou gravação
- Os bancos de dados não são grandes - 1 GB, 1,5 GB, 7,5 GB
- O processo do servidor SQL está usando bytes particulares de 16 GB, conjunto de trabalho de 15 GB
No geral, nenhum problema de recurso é observado. Agora, a parte estranha. O SQL não é reiniciado (o processo está em execução há quase 6 meses), mas parece que a cada ~ 50 dias, o contador Page Life Expectancy cai para (quase) 0. Até esse ponto, ele sobe continuamente, sem quedas. Aqui está um gráfico de desempenho:
Quando olho para os dados do contador (não tenho o número exato, apenas uma agregação horária), parece que o valor do contador PLE atingiu cerca de 4.295.000 s (aproximadamente 50 dias) todas as vezes (pelo menos toda vez que tenho dados).
Minha teoria maluca é que o número PLE é mantido em milissegundos como um int longo sem sinal (que tem um limite de 4.294.967.295) e, aos 49,71 dias, ele é redefinido, por design ou por causa de um bug. Isso explicaria o comportamento dos dois servidores e o padrão idêntico que eles têm. Ou poderia ser algo totalmente diferente e simplesmente não estou fazendo nenhum sentido. :)
Alguém viu algo assim ou pode explicar esse comportamento?
PS Eu vi este post, mas meu caso parece um pouco diferente.
PPS Este é um repost - eu originalmente o publiquei aqui , mas foi aconselhado que o público aqui seja mais apropriado.
Obrigado!