公司一直有臺服務器cpu占用很高,分析出是恒生監(jiān)控程序java占用很高,且三個java程序,僅其中一個很高,要恒生解決,一直未解決,導致每周重啟,我司運維都要手動進行程序相關性設置,給運維帶來麻煩。
為解決運維重復勞動,擬看看是否可以腳本實現(xiàn),通過對網上資料查詢可通過powershell進行程序相關性設置。參考鏈接如下:
https://www.pstips.net/setting-process-running-under-specific-cpu.html
故編寫了如下powershell腳本用于實現(xiàn)程序自動設置cpu高的java程序相關性設置。
設置cpu運行個數(shù).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運行個數(shù).ps1
最后,在延時啟動工具上配置好callpowershell.bat延時2分鐘啟動。
經過以上步驟后,每周重啟完畢服務器2分鐘后,自動會對占用100%cpu的java進程指定cpu個數(shù)為4個。解決了運維過程中的重復勞動。
另外有需要云服務器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。