Monitorování průměrného počtu vláken ATQ

Microsoft.Windows.Server.2012.AD.Performance.Atq.AvgThreads.Monitor (UnitMonitor)

Monitoruje celkový počet používaných vláken ATQ.

Knowledge Base article:

Souhrn

Monitorování průměrného počtu vláken fronty asynchronních vláken (ATQ) Počet používaných vláken ATQ je vysoký. Může to mít nepříznivý vliv na propustnost požadavků klientů.

Existuje pevný počet dostupných vláken pro zpracování požadavků. Výchozí a doporučená konfigurace jsou 4 vlákna na jedno jádro procesoru. Pokud se využívají všechna vlákna, další požadavky se uloží do fronty, dokud nebude vlákno k dispozici.

Příčiny

Možné příčiny jsou následující:

Řešení

Podívejte se na celkový výkon systému počítače a zjistěte, jestli nepotřebuje další prostředky.

Přidejte další řadiče domény, které pomohou zatížení rovnoměrněji rozložit.

Ověřte, že existuje dostatek řadičů domény, které hostují DNS.

Externí

Element properties:

TargetMicrosoft.Windows.Server.2012.AD.DomainControllerRole
Parent MonitorMicrosoft.Windows.Server.2012.AD.AtqMonitors.Performance.AggregateMonitor
CategoryCustom
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.Server.2012.AD.Performance.Atq.AvgThreads.Monitor.Monitortype
RemotableFalse
AccessibilityPublic
Alert Message
Celkový počet používaných vláken ATQ překročil jednu nebo víc prahových hodnot u víc vzorků.
{0}
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.Windows.Server.2012.AD.Performance.Atq.AvgThreads.Monitor" Accessibility="Public" Enabled="true" Target="AD2012Core!Microsoft.Windows.Server.2012.AD.DomainControllerRole" ParentMonitorID="Microsoft.Windows.Server.2012.AD.AtqMonitors.Performance.AggregateMonitor" Remotable="false" Priority="Normal" TypeID="Microsoft.Windows.Server.2012.AD.Performance.Atq.AvgThreads.Monitor.Monitortype" ConfirmDelivery="false">
<Category>Custom</Category>
<AlertSettings AlertMessage="Microsoft.Windows.Server.2012.AD.Performance.Atq.AvgThreads.Monitor.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/Property[@Name='ErrorString']$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="ThreadUsageOK" MonitorTypeStateID="ThreadUsageOK" HealthState="Success"/>
<OperationalState ID="ThreadUsageWarn" MonitorTypeStateID="ThreadUsageWarn" HealthState="Warning"/>
<OperationalState ID="ThreadUsageError" MonitorTypeStateID="ThreadUsageError" HealthState="Error"/>
</OperationalStates>
<Configuration>
<Frequency>300</Frequency>
<TimeoutSeconds>300</TimeoutSeconds>
<WarnThreshold>80</WarnThreshold>
<ErrorThreshold>90</ErrorThreshold>
<NumSamples>10</NumSamples>
<MaxPoolThreads>4</MaxPoolThreads>
</Configuration>
</UnitMonitor>