Windows 上查看端口占用
你可以這樣查找進程的 PID(進程ID):
- 通過任務管理器
按 Ctrl + Shift + Esc 打開任務管理器。
切換到“詳細信息”或“進程”標簽頁。
找到你的進程(比如 dotnet.exe 或你的應用名),右側就有“PID”列(如果沒有,右鍵表頭勾選“PID”)。 - 通過命令行
查看所有進程及PID
tasklist
按進程名查找
比如你的進程名是 dotnet.exe:
tasklist | findstr dotnet
也可以用 PowerShell
Get-Process | Where-Object {$_.ProcessName -like "dotnet"} - 結合 netstat 查端口和PID
netstat -ano
最后一列就是 PID。
找到 PID 后,就可以用 netstat -ano | findstr 你的PID 查看端口占用情況。
你可以通過以下幾種方式在 Windows 上查看端口占用情況,判斷端口是否越來越多:
- 使用 netstat 命令
打開命令提示符(cmd),輸入:
netstat -ano | findstr 你的進程PID
先通過任務管理器找到你的服務進程 PID(比如 12345)。
替換上面命令中的 你的進程PID,如 netstat -ano | findstr 12345。
觀察端口數量是否隨著請求增多而持續增加且不釋放。 - 只看 gRPC 默認端口(比如 50051)
netstat -ano | findstr 50051 - 實時監控
可以多次執行上面命令,或者用 PowerShell 循環:
while ($true) { netstat -ano | findstr 12345; Start-Sleep -Seconds 2 }
- 使用 TCPView 工具(推薦)
TCPView 是微軟官方的可視化工具,可以實時查看每個進程的端口占用情況,支持篩選和排序,非常直觀
如果你發現你的服務進程的端口數隨著請求越來越多且不釋放,說明確實有端口泄漏問題。
此時建議重點排查 gRPC Channel 的復用和釋放情況。

浙公網安備 33010602011771號