电脑上的服务无缘无故出现个问题,你们有见过吗?之前我开发这个项目好好的,就是本周启动项目,出现这个问题。
代码里面用的nacos,一直在创建tcp连接,占用端口,直接占用满了,我都把nacos和dubbo的配置都改了,还是这样,只要我启动项目,就会一直涨,直到占满后,服务之间无法再调用了
这个里面的服务器地址是内网地址,我本地启动服务调用的是7.187的服务器
我同事启动这个服务,也会涨,但是还会有掉的,我这就是无限上涨不释放。
#requires -Version 5.1
param(
[int]$Interval = 5,
[int]$WarnThreshold = 100
)
function Get-ServiceName($procId) {
try {
$proc = Get-CimInstance Win32_Process -Filter “ProcessId = $procId” -ErrorAction SilentlyContinue
if ($proc) {
$cmd = $proc.CommandLine
if ($cmd -match ’ ([a-zA-Z0-9.]+Application|[a-zA-Z0-9.]+Main)') {
return $matches[1]
}
if ($cmd -match ‘target\([^\]+).jar’) {
return $matches[1]
}
}
$p = Get-Process -Id $procId -ErrorAction SilentlyContinue
if ($p) { return $p.ProcessName }
} catch {}
return “???”
}
while ($true) {
Clear-Host
$now = Get-Date -Format “HH:mm:ss”
Write-Host “===== Nacos Connection Monitor =====” -ForegroundColor Cyan
Write-Host “Time: now Refresh: {Interval}s WarnThreshold: ${WarnThreshold}” -ForegroundColor Gray
Write-Host “”
$conns = Get-NetTCPConnection -RemotePort 8848 -ErrorAction SilentlyContinue | Where-Object { $_.State -eq 'Established' }
if (-not $conns) {
Write-Host "No ESTABLISHED connections to Nacos (8848)." -ForegroundColor Green
Start-Sleep $Interval
continue
}
$total = $conns.Count
$groups = $conns | Group-Object OwningProcess | Sort-Object Count -Descending
if ($total -gt 500) {
Write-Host "Total connections: $total" -ForegroundColor Red
} elseif ($total -gt 200) {
Write-Host "Total connections: $total" -ForegroundColor Yellow
} else {
Write-Host "Total connections: $total" -ForegroundColor Green
}
Write-Host ""
Write-Host ("{0,8} {1,-6} {2,-40} {3}" -f "Count", "PID", "ServiceName", "Status") -ForegroundColor Gray
Write-Host ("-" * 75) -ForegroundColor Gray
foreach ($g in $groups) {
$procId = $g.Name
$count = $g.Count
$name = Get-ServiceName $procId
$status = "OK"
$color = "Green"
if ($count -gt $WarnThreshold) {
$status = "WARN"
$color = "Red"
} elseif ($count -gt 50) {
$status = "HIGH"
$color = "Yellow"
}
$line = "{0,8} {1,-6} {2,-40} {3}" -f $count, $procId, $name, $status
Write-Host $line -ForegroundColor $color
}
Write-Host ""
if ($total -gt 500) {
Write-Host "[ALERT] Connection storm detected! Total > 500." -ForegroundColor Red
} elseif ($total -gt 200) {
Write-Host "[WARNING] Total connections are high (>200). Monitor closely." -ForegroundColor Yellow
} else {
Write-Host "[NORMAL] Connection count looks healthy." -ForegroundColor Green
}
Start-Sleep $Interval
}
是这个脚本监控出来的结果,我也问了两天AI,以及修改nacos的配置,和升级nacos,但是还是有两个服务无法处理
3 个帖子 - 2 位参与者