Monitor de Máximo de API Simultâneas do Windows Server 2012

Microsoft.Windows.Server.2012.MaxConcurrentAPI.Monitor (UnitMonitor)

Este monitor alerta quando a condição Máximo de API Simultâneas é atingida.

Knowledge Base article:

Resumo

Quando os clientes têm falhas de Autenticação do Windows, Exchange, SharePoint + LOB devido a um valor predefinido de MaxConcurrentAPI reduzido, que constitui um limite para o número máximo de validações de palavras-passe NTLM ou Kerberos PAC que um servidor pode processar em simultâneo.

Considere o seguinte cenário:

Neste cenário, os pedidos de NTLM excedem o tempo limite. Por exemplo, os clientes do Exchange não efetuarão a autenticação no servidor Exchange quando este problema ocorre. Por conseguinte, os utilizadores não podem aceder às caixas de correio deles e o Microsoft Outlook aparenta deixar de responder.

Causas

Este problema ocorre porque o limite de otimização da API de NTLM foi atingido.

A proliferação de dispositivos que geram excesso de autenticação conduz a uma tendência crescente de falhas em grandes organizações.

A Economia de escalas adquirida em nuvem reforça a estrutura do Windows que tiram partido do nosso Active Directory.

O BPOS e o O365 já aumentaram este valor para 10 e 150, respetivamente. A correção do registo foi amplamente implementada através de casos de CSS anteriores.

Resoluções

Nota: A validação Kerberos PAC não pode ser desativada para agrupamentos de aplicações do IIS ou para alguns serviços relacionados com o Exchange.

Nota: Para decidir qual o valor a definir para a definição de MaxConcurrentApi no seu ambiente, consulte o artigo seguinte da Base de Dados de Conhecimento.

Artigo da Base de Dados de Conhecimento: 2688798

Adicional

Como efetuar a optimização do desempenho da autenticação NTLM utilizando a definição de MaxConcurrentApi.

Mais Informações

Para obter mais informações sobre este problema, consulte o artigo seguinte da TechNet. Configurar MaxConcurrentAPI para Autenticação NTLM Pass-Through.

Element properties:

TargetMicrosoft.Windows.Server.6.2.OperatingSystem
Parent MonitorSystem.Health.AvailabilityState
CategoryStateCollection
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.Server.MaxConcurrentAPI.MonitorType
RemotableTrue
AccessibilityPublic
Alert Message
Alerta Máximo de API Simultâneas Atingido
Máximo de API Simultâneas atingido no Servidor {0}
RunAsSystem.PrivilegedMonitoringAccount

Source Code:

<UnitMonitor ID="Microsoft.Windows.Server.2012.MaxConcurrentAPI.Monitor" Accessibility="Public" Enabled="true" Target="WindowsServer!Microsoft.Windows.Server.6.2.OperatingSystem" ParentMonitorID="SystemHealth!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="WindowsServer!Microsoft.Windows.Server.MaxConcurrentAPI.MonitorType" ConfirmDelivery="false" RunAs="System!System.PrivilegedMonitoringAccount">
<Category>StateCollection</Category>
<AlertSettings AlertMessage="Microsoft.Windows.Server.2012.MaxConcurrentAPI.Monitor.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="MaxConcurrentAPIAvailable" MonitorTypeStateID="Success" HealthState="Success"/>
<OperationalState ID="MaxConcurrentAPIReached" MonitorTypeStateID="Error" HealthState="Error"/>
</OperationalStates>
<Configuration>
<DiagnosticMode>0</DiagnosticMode>
<IntervalSeconds>900</IntervalSeconds>
<SyncTime/>
<TimeoutSeconds>300</TimeoutSeconds>
<ThresholdWaiters>50</ThresholdWaiters>
<ThresholdTimeouts>2000</ThresholdTimeouts>
</Configuration>
</UnitMonitor>