Por que o número de threads de trabalho de um grupo de disponibilidade em um pool HADR aumentaria muito além do uso mínimo de " normalmente, há de 3 a 10 threads compartilhados " por réplica?
Em um caso, observamos o uso de mais de 300 threads com 3 grupos de disponibilidade e 10 bancos de dados no total. SQL Server 2014 SP1.
Nossos leads são backup na réplica secundária, alta atividade na réplica primária, relatórios na réplica secundária.
Os AGs estão em um datacenter no VMware. No total, com 16 agendadores, os segmentos de trabalho comuns estão abaixo do intervalo de 200. max_dop no servidor é 2.
- 3 AG, 10 DB, 4 réplicas cada - primário, 2 somente leitura, 1 não legível.
- 1 secundário é sincronizado, 2 assíncrono
- 16 vcores em 32 núcleos físicos no cluster grande de vários hosts.
- Sem superprovisão.
- Outras VMs menores, de 4 a 8 núcleos, são colocadas, mas não pressionam na CPU
Observamos um aumento nos threads de trabalho, resultando em negação de serviço. A atribuição de threads de trabalho à AG é nossa suposição, pois apenas esses threads de trabalho podem ultrapassar o limite.
Abaixo, os links do Blog de engenheiros de campo do SQL Server Premier, lidos no contexto, não oferecem uma resposta completa para mim: