記憶體可用 MB

Microsoft.Windows.Server.10.0.OperatingSystem.MemoryAvailableMBytes (UnitMonitor)

監視可用記憶體數量。

Knowledge Base article:

摘要

系統的 Available MBytes (Memory\Available MBytes) 已低於閾值。整體系統效能可能會明顯下降,進而造成作業系統與應用程式效能不良。

Available MBytes 是可供應用程式與處理程序使用的實體記憶體容量。

預設記憶體閾值是 100MB

原因

在下列情況下,可用實體記憶體容量可能會變得很低:

解決方式

若要檢視 Memory\Available MBytes 計數器的最近歷程,可使用下列檢視:

啟動 Memory Available MBytes 效能檢視

若要解決實體記憶體不足的狀況,系統管理員可選擇下列一個或多個選項:

如果已為系統分配適當的實體記憶體與應用程式負載,但系統在一段時間內仍持續超過可用實體記憶體閾值,則可能是應用程式流失記憶體。若要識別流失記憶體的應用程式,請執行下列操作:

開啟系統監視器,並在一段時間內持續監視下列全系統效能計數器:

如果以上任何一個計數器在一段時間內持續增加,可能是應用程式的記憶體流失。

如果系統似乎是流失記憶體,監視每個執行中處理程序的下列計數器,可識別特定的應用程式:

如果觀察到任何計數器持續出現大幅增加的情形,可能需要連絡應用程式廠商以尋求支援。

其他

如需監視記憶體計數器的詳細資訊,請參閱 Microsoft® Windows® 2000 Server 文件網站,網址是: http://go.microsoft.com/fwlink/?LinkId=27750

如需記憶體物件的詳細資訊,請參閱 MSDN 網站,網址是: http://go.microsoft.com/fwlink/?LinkId=27751

如需評估記憶體與快取使用量的詳細資訊,請參閱 Microsoft Windows 2000 Resource Kit 網站,網址是: http://go.microsoft.com/fwlink/?LinkId=27681

Element properties:

TargetMicrosoft.Windows.Server.10.0.OperatingSystem
Parent MonitorSystem.Health.PerformanceState
CategoryPerformanceHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.Server.10.0.MemoryAvailableMBytes.Monitortype
RemotableTrue
AccessibilityPublic
Alert Message
記憶體可用 MB 過低
Memory\Available MBytes 效能計數器已超過閾值。以下的值已超過閾值: {0}。
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.Windows.Server.10.0.OperatingSystem.MemoryAvailableMBytes" Accessibility="Public" Enabled="true" Target="ServervNext!Microsoft.Windows.Server.10.0.OperatingSystem" ParentMonitorID="SystemHealth!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="Microsoft.Windows.Server.10.0.MemoryAvailableMBytes.Monitortype" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.Windows.Server.10.0.OperatingSystem.MemoryAvailableMBytes.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/Property[@Name='AvailableMBytes']$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="OverThreshold" MonitorTypeStateID="MemoryAvailableMBytesNormal" HealthState="Success"/>
<OperationalState ID="UnderThreshold" MonitorTypeStateID="MemoryAvailableMBytesLow" HealthState="Error"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>900</IntervalSeconds>
<TimeoutSeconds>300</TimeoutSeconds>
<TargetComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</TargetComputerName>
<MemoryThreshold>100</MemoryThreshold>
<NumSamples>3</NumSamples>
<CounterName>Available MBytes</CounterName>
<ObjectName>Memory</ObjectName>
<InstanceName/>
<AllInstances>false</AllInstances>
</Configuration>
</UnitMonitor>