您好,登錄后才能下訂單哦!
公司一直有臺服務器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個。解決了運維過程中的重復勞動。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。