powershell实现设置程序相关性
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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个。解决了运维过程中的重复劳动。
以上是关于powershell实现设置程序相关性的主要内容,如果未能解决你的问题,请参考以下文章
C# PowerShell 无法仅在 Web 应用程序中连接到 AzureAD