Compartilhar via


Corrigindo problemas de MCA, parte 2: Calcule e altere o MCA em seus computadores afetados

Este artigo discute como calcular e implementar novos valores para o MaxConcurrentApi parâmetro.

Aplica-se a: Windows Server 2012 e versões posteriores, Windows 8 e versões posteriores

Resumo

Agora que você tem uma lista de servidores que podem se beneficiar de uma alteração no MaxConcurrentApi, é necessário determinar qual deve ser o novo valor. Para fazer isso, siga estas etapas gerais para cada servidor afetado:

  1. Colete estatísticas gerais de desempenho para estabelecer linhas de base para o servidor afetado.
  2. Colete estatísticas de desempenho relacionadas ao ajuste enquanto o servidor está processando o máximo de solicitações do cliente. Por exemplo, em um cenário de servidor de email, o melhor momento para coletar os dados de desempenho é quando os usuários chegam ao trabalho e verificam suas mensagens de email.
  3. Use os dados de desempenho para calcular um MaxConcurrentApi valor ajustado para esse servidor.
  4. Se o valor calculado não for igual ao valor padrão e for menor que o valor máximo, defina o valor calculado no Registro.
  5. Colete novas estatísticas de desempenho para verificar se a alteração fez uma melhoria. Verifique o desempenho em relação à linha de base.

Importante

  • Antes de alterar MaxConcurrentApi em um servidor de produção, altere-o em um ambiente de teste. Certifique-se de que a alteração não cause outros problemas de desempenho. Essa alteração pode ocupar recursos de memória e disco em servidores que usam hardware mais antigo.
  • Lembre-se de que as condições de carga podem mudar com base em cada cenário e ambiente de negócios. Portanto, se a carga de serviço for alterada, talvez seja necessário recalcular o MaxConcurrentApi valor.

Definir a linha de base de desempenho

Antes de fazer qualquer alteração, monitore os servidores que você suspeita ter problemas de MCA por tempo suficiente para estabelecer linhas de base de desempenho (especialmente durante períodos de pico de carga). Continue monitorando depois de fazer as MaxConcurrentApi alterações. As linhas de base de desempenho fornecem os dados necessários para determinar os efeitos dos novos MaxConcurrentApi valores. Os mesmos dados também podem ajudá-lo a identificar a causa raiz dos problemas de desempenho do seu ambiente (consulte a Parte 3 desta série).

No mínimo, você deve monitorar os contadores a seguir para estabelecer uma linha de base de desempenho e verificar a eficácia de quaisquer MaxConcurrentApi alterações.

Conjunto de contadores de desempenho Finalidade
Memória Acompanhe a memória geral do sistema para garantir que o sistema não esteja sobrecarregado.
Disco físico ou disco lógico Acompanhe a E/S do disco para garantir que os discos não estejam sobrecarregados. Isso é importante se o log do Netlogon estiver habilitado (o que deve ser se você estiver acompanhando esse problema).
Processo (lsass.exe, no mínimo) Para essa linha de base, lsass.exe é o mais interessante porque é aqui que o Netlogon opera. No entanto, nunca é demais ter uma visão dos processos caso surja um problema depois que você mudar MaxConcurrentApi.
Processador Monitore a carga do processador.
Adaptador de rede Opcional, mas recomendado.
Netlogon Acompanhe os contadores de desempenho do Netlogon para obter uma visão holística das funções do Netlogon. Você pode usar os contadores para detectar atrasos na autenticação e também os próprios tempos limite.

O monitoramento desses contadores fornece uma maneira rápida (fora dos logs do Netlogon) de determinar se os tempos limite de autenticação estão ocorrendo.

Você ainda precisa usar os logs do Netlogon para tendências e análises adequadas (como determinar quantos usuários são afetados, com que frequência eles foram afetados, os códigos de erro exatos e a origem da autenticação "incorreta").

Esta seção descreve como usar o Monitor de Desempenho (Perfmon.msc, também disponível no menu Ferramentas do Gerenciador do Servidor) para coletar os dados que você precisa calcular MaxConcurrentApi.

Configure o Monitor de Desempenho da seguinte maneira:

  • Duração. Defina o valor de Duração nas propriedades do Monitor de Desempenho. Recomendamos que você use um valor no intervalo de 90 a 120 segundos.

    Captura de tela que mostra o local da propriedade Duration no Monitor de Desempenho.

  • Contadores. Adicione os contadores a seguir do objeto Netlogon .

    Contador Instância
    Aquisição de semáforo _Total
    Tempos limite de semáforo _Total
    Tempo médio de espera do semáforo _Total

    Observação

    Você pode obter a maioria dos valores necessários no modo de exibição Linha do Monitor de Desempenho. No entanto, para o valor Tempo médio de espera do semáforo, use o modo de exibição Relatório.
    Captura de tela que mostra o local da propriedade View no Monitor de Desempenho.

Colete os seguintes valores do Monitor de Desempenho:

  • <Duração> = Constante que define o intervalo de coleta de dados.
  • <> Semaphore_Acquires = A alteração no valor do contador Netlogon Semaphore Acquires durante a duração especificada. O contador é cumulativo. O valor mínimo é o valor inicial e o valor máximo é o valor final.
  • <> Semaphore_Timeouts = A alteração no valor do contador Netlogon Semaphore Timeouts durante a duração especificada. O contador é cumulativo. O valor mínimo é o valor inicial e o valor máximo é o valor final.
  • <> Avg_Semaphore_Hold_Time = O valor do contador Netlogon Average Semaphore Hold Time. Para ver o valor calculado na duração especificada, defina o modo de exibição Monitor de Desempenho como Relatório em vez de Linha.

Observação

Se o valor de qualquer um desses contadores for zero, o servidor não precisará de um novo MaxConcurrentApi valor.

Calcular o novo valor MaxConcurrentApi

Use a seguinte equação para determinar o valor de MCA para um servidor:

(<Semaphore_Acquires> +< Semaphore_Timeouts>) × <Avg_Semaphore_Hold_Time> / <Duração> = <MaxConcurrentApiI>

Compare o valor calculado com o valor padrão e máximo da função do servidor, conforme listado na tabela a seguir.

Tipo ou função do sistema operacional Threads padrão (por canal seguro) Máximo de threads
Controladores de domínio
Windows Server 2012 e versões posteriores
10 150
Servidores membros
Windows 2012 e versões posteriores
10 150
Estações de trabalho
Windows 8 e versões posteriores
1 150
Observação: é improvável que você precise de um valor maior que 1 em uma estação de trabalho.

Observação

  • As versões anteriores do Windows que atingiram a data de fim do suporte têm valores padrão e máximos diferentes para MaxConcurrentApi. Se você tiver um problema de MCA que envolva uma versão sem suporte do Windows, atualize para uma versão mais recente do Windows em vez de tentar alterar o valor MaxConcurrentApi.
  • Os valores nesta tabela refletem condições nas quais não existem atrasos de comunicação entre o sistema de autenticação (que envia a solicitação de autenticação, como um servidor de aplicativos) e o controlador de domínio no domínio de destino.

Se o valor calculado MaxConcurrentApi for maior que o valor padrão e menor que 150, altere o valor do MaxConcurrentApi servidor, conforme descrito na próxima seção.

Importante

Se o valor calculado for igual ou maior que 150, a alteração MaxConcurrentApi não resolverá o problema. Verifique se há problemas subjacentes em seu ambiente e considere adicionar servidores para dar suporte à carga de solicitação de autenticação (consulte a Parte 3 desta série).

Alterar MaxConcurrentApi

Você tem que configurar MaxConcurrentApi no registro do servidor. Não existe nenhuma configuração de Diretiva de Grupo comparável.

Importante

Esta seção, método ou tarefa contém etapas que descrevem como modificar o Registro. Entretanto, sérios problemas poderão ocorrer caso você modifique o Registro incorretamente. Portanto, certifique-se de seguir essas etapas com atenção. Para maior proteção, faça backup do Registro antes de modificar, para poder restaurar se ocorrer um problema. Para obter mais informações sobre como fazer backup e restaurar o Registro, consulte Como fazer backup e restaurar o Registro no Windows.

Para alterar a configuração MaxConcurrentApi, siga estas etapas:

  1. Selecione Iniciar, digite regedit e selecione Editor do Registro nos resultados da pesquisa.

  2. Selecione a seguinte subchave do Registro: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Netlogon\Parameters

  3. Selecione Editar>Novo>Valor DWORD e insira MaxConcurrentApi.

  4. Selecione Editar>Modificar e insira o valor decimal da nova MaxConcurrentApi configuração.

  5. Abra uma janela do Prompt de Comando e execute os seguintes comandos, em sequência:

    net stop netlogon
    net start netlogon
    

Verificar a nova configuração MaxConcurrentApi

Conforme descrito em Definir a linha de base de desempenho, continue monitorando o desempenho do servidor depois de MaxConcurrentApi alterar o valor do servidor. Concentre-se nos seguintes contadores de desempenho:

  • Memória
  • Disco físico ou disco lógico
  • Processo
  • Processador
  • Adaptador de rede
  • Netlogon

Idealmente, o desempenho deve melhorar depois que você alterar MaxConcurrentApi.

Exemplo: Calculando um valor MaxConcurrentApi ajustado

Esta seção continua o exemplo que começou na parte 1 desta série. Os dados de exemplo revelaram que o servidor tinha um problema significativo de MCA.

Para coletar as informações necessárias para os cálculos, o Monitor de Desempenho é configurado da seguinte maneira:

  • A propriedade Duration é de 90 segundos.
  • Os três contadores a seguir são visíveis:
    • Aquisição de Semáforo (_Total)
    • Tempos limite de semáforo (_Total)
    • Tempo médio de espera do semáforo (_Total)

O primeiro valor a ser adicionado à equação é o valor conhecido, /<Duration>.

(<Semaphore_Acquires> +< Semaphore_Timeouts>) ×< Avg_Semaphore_Hold_Time> / 90 = <MaxConcurrentApi>

Determinar o valor médio do tempo de espera do semáforo

A melhor maneira de encontrar o tempo médio de espera do semáforo é alternar para o modo de exibição Relatório no Monitor de Desempenho. Para fazer isso, selecione Alterar tipo de>gráfico Relatório na barra de ferramentas do Monitor de Desempenho. O modo de exibição Relatório é semelhante ao seguinte:

Captura de tela que mostra a exibição Relatório no Monitor de Desempenho.

Agora adicione o tempo médio de espera do semáforo à equação.

(<Semaphore_Acquires> + <Semaphore_Timeouts>) × 0,098 / 90 = <MaxConcurrentApi>

Esse valor é o único valor que você precisa obter na exibição Relatório . Para os valores restantes, você precisa voltar para o modo de exibição Linha (na barra de ferramentas, selecione Alterar tipo de>gráfico Linha).

Determinar o valor de Tempos Limite de Semáforo

O exemplo na Parte 1 usou tempos limite de semáforo para determinar se o servidor tinha um problema de MCA. Nesta etapa, você precisa recalcular esse valor usando a duração de 90 segundos.

Captura de tela que mostra dados de tempo limite em uma duração de 90 segundos no Monitor de Desempenho.

Subtrair o valor mínimo do valor máximo produz um valor de 1.983.

(<Semaphore_Acquires> + 1.983) × 0,098 / 90 = <MaxConcurrentApi>

Determinar o valor de aquisição do semáforo

Semelhante ao valor de Tempos Limite de Semáforo, os dados de Aquisição de Semáforo são cumulativos durante o período de duração que aparece no Monitor de Desempenho.

Captura de tela que mostra o Semáforo Adquire dados no Monitor de Desempenho.

Subtrair o valor mínimo do valor máximo produz um valor de 1.833.

(1.833 + 1.983) × 0,098 / 90 = <MaxConcurrentApi>

Calcular MaxConcurrentApi

A equação produz um valor de 4,1552 para MaxConcurrentApi. A entrada do Registro requer um valor inteiro, mas 4 pode não ser suficiente. Nesse caso, 5 é um valor seguro a ser usado.

Próximas etapas