千家信息网

powershell实现设置程序相关性脚本

发表于:2024-11-15 作者:千家信息网编辑
千家信息网最后更新 2024年11月15日,公司一直有台服务器cpu占用很高,分析出是恒生监控程序java占用很高,且三个java程序,仅其中一个很高,要恒生解决,一直未解决,导致每周重启,我司运维都要手动进行程序相关性设置,给运维带来麻烦。为
千家信息网最后更新 2024年11月15日powershell实现设置程序相关性脚本

公司一直有台服务器cpu占用很高,分析出是恒生监控程序java占用很高,且三个java程序,仅其中一个很高,要恒生解决,一直未解决,导致每周重启,我司运维都要手动进行程序相关性设置,给运维带来麻烦。
为解决运维重复劳动,拟看看是否可以脚本实现,通过对网上资料查询可通过powershell进行程序相关性设置。参考链接如下:
https://www.pstips.net/setting-process-running-under-specific-cpu.html
故编写了如下powershell脚本用于实现程序自动设置cpu高的java程序相关性设置。

设置cpu运行个数.ps1脚本如下:
#获取java进程,且cpu高于40%的java进程,由于机器上有三个java,且路径都一致。
$id=Get-Process | Where-Object {$.Name -eq "java"} | Where-Object {$.CPU -gt 40}

#设置前4个CPU运行,可自由配置哪些cpu运行。ProcessorAffinity(设置相似性)
$id.ProcessorAffinity=15

再建立一个callpowershell.bat,用于运行powershell脚本。
powershell 设置cpu运行个数.ps1

最后,在延时启动工具上配置好callpowershell.bat延时2分钟启动。

经过以上步骤后,每周重启完毕服务器2分钟后,自动会对占用100%cpu的java进程指定cpu个数为4个。解决了运维过程中的重复劳动。

0