手机看片精品高清国产日韩,色先锋资源综合网,国产哺乳奶水91在线播放,乱伦小说亚洲色图欧洲电影

查看 IIS 中每個(gè)網(wǎng)站的資源使用情況

2024-12-16 15:11:41 3862

歡迎來(lái)到藍(lán)隊(duì)云技術(shù)小課堂,每天分享一個(gè)技術(shù)小知識(shí)。


IIS 服務(wù)器上,特別是運(yùn)行虛擬主機(jī)環(huán)境時(shí),很多管理員都會(huì)遇到 CPU 占用 100% 或系統(tǒng)資源異常的情況,但往往不知道是哪個(gè)網(wǎng)站導(dǎo)致了問(wèn)題。以下方法可以幫助我們快速定位每個(gè)站點(diǎn)的資源使用情況(主要是內(nèi)存和 CPU 占用)。

 

步驟一:將每個(gè)網(wǎng)站設(shè)置為獨(dú)立進(jìn)程

1.打開(kāi) IIS 管理器

選擇具體的站點(diǎn),右鍵點(diǎn)擊 “屬性”。

切換到 “主目錄” 選項(xiàng)卡,將 “應(yīng)用程序保護(hù)” 改為 “高(獨(dú)立)”。

這樣會(huì)為每個(gè)站點(diǎn)啟動(dòng)一個(gè)獨(dú)立的 dllhost.exe 進(jìn)程。

 

2.查看獨(dú)立進(jìn)程的資源占用

打開(kāi) 任務(wù)理器,切換到 “進(jìn)程” 選項(xiàng)卡。

你會(huì)看到多個(gè) dllhost.exe 進(jìn)程,每個(gè)進(jìn)程對(duì)應(yīng)一個(gè)獨(dú)立的站點(diǎn)。

此時(shí)可以看到這些進(jìn)程的 CPU 占用 和 內(nèi)存使用量。

 

步驟二:找到每個(gè)站點(diǎn)對(duì)應(yīng)的進(jìn)程(dllhost.exe)

接下來(lái),我們需要確認(rèn)每個(gè) dllhost.exe 進(jìn)程對(duì)應(yīng)的是哪個(gè)網(wǎng)站。

 

1.打開(kāi)組件服務(wù)管理器

運(yùn)行 中輸入 dcomcnfg,按回車打開(kāi) 組件服務(wù)。

依次展開(kāi):組件服務(wù) → 計(jì)算機(jī) → 我的電腦 → COM+ 應(yīng)用程序。

 

2.查看站點(diǎn)與進(jìn)程的關(guān)聯(lián)

COM+ 應(yīng)用程序 下,你會(huì)看到類似于 IIS-{domain.com//Root} 這樣的條目。

每個(gè)條目代表一個(gè) IIS 網(wǎng)站,名稱中包含對(duì)應(yīng)的域名或站點(diǎn)路徑。

點(diǎn)擊頂部工具欄中的 “狀態(tài)查看”,你會(huì)看到如下信息:

名稱 運(yùn)行狀態(tài) PID

IIS-{example.com//Root} 1688

PID 就是對(duì)應(yīng)的 dllhost.exe 進(jìn)程 ID,可以在任務(wù)管理器中找到。

 

3.確認(rèn)資源占用

打開(kāi)任務(wù)管理器 → “詳細(xì)信息” 選項(xiàng)卡。

找到對(duì)應(yīng)的 dllhost.exe,對(duì)比進(jìn)程 ID(PID),即可查看該網(wǎng)站的 CPU 占用 和 內(nèi)存使用量。

這樣就能快速定位是哪個(gè)網(wǎng)站導(dǎo)致了資源占用異常。

 

步驟三:通過(guò) PowerShell 腳本快速定位

如果服務(wù)器站點(diǎn)較多,手動(dòng)排查效率低,可以通過(guò) PowerShell 腳本實(shí)現(xiàn)快速定位。

# 加載 IIS 模塊

Import-Module WebAdministration

 

# 獲取所有運(yùn)行的 w3wp.exe 進(jìn)程和對(duì)應(yīng)的資源占用

$Processes = Get-Process w3wp -ErrorAction SilentlyContinue

$AppPools = Get-WebAppPoolState | Where-Object { $_.Value -eq "Started" }

 

# 遍歷應(yīng)用程序池,輸出內(nèi)存和 CPU 占用

foreach ($AppPool in $AppPools) {

    $AppPoolName = $AppPool.ItemXPath.Split("/")[-1]

    $PID = (Get-WmiObject Win32_Process | Where-Object { $_.Name -eq "w3wp.exe" -and $_.CommandLine -match $AppPoolName }).ProcessId

    if ($PID) {

        $Process = $Processes | Where-Object { $_.Id -eq $PID }

        Write-Output "App Pool: $AppPoolName | PID: $PID | Memory: $($Process.WorkingSet / 1MB) MB | CPU: $($Process.CPU)"

    }

}

腳本功能:

列出每個(gè) IIS 應(yīng)用程序池的進(jìn)程 ID、內(nèi)存使用量和 CPU 使用率。

適用于需要快速定位資源占用高的站點(diǎn)。

 

步驟四:結(jié)合 Perfmon 進(jìn)行深入分析

1.打開(kāi) 性能監(jiān)視器(Perfmon):

運(yùn)行 中輸入 perfmon.msc 并回車。

 

2.添加 w3wp 或 dllhost 進(jìn)程的監(jiān)控:

在左側(cè)面板中,選擇 “性能監(jiān)視器”,然后點(diǎn)擊 “添加計(jì)數(shù)器”。

添加 Process → Working Set(內(nèi)存占用) 和 % Processor Time(CPU 占用)。

選中對(duì)應(yīng)的進(jìn)程,查看資源占用情況。


藍(lán)隊(duì)云官網(wǎng)上擁有完善的技術(shù)支持庫(kù)可供參考,大家可自行查閱,更多技術(shù)問(wèn)題,可以直接咨詢。同時(shí),藍(lán)隊(duì)云整理了運(yùn)維必備的工具包免費(fèi)分享給大家使用,需要的朋友可以直接咨詢。

更多技術(shù)知識(shí),藍(lán)隊(duì)云期待與你一起探索。

提交成功!非常感謝您的反饋,我們會(huì)繼續(xù)努力做到更好!

這條文檔是否有幫助解決問(wèn)題?

非常抱歉未能幫助到您。為了給您提供更好的服務(wù),我們很需要您進(jìn)一步的反饋信息:

在文檔使用中是否遇到以下問(wèn)題: