新聞中心
這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
使用python實(shí)現(xiàn)統(tǒng)計(jì)Nginx進(jìn)程所占用的物理內(nèi)存-創(chuàng)新互聯(lián)
實(shí)現(xiàn)代碼一:
此方法適用于對進(jìn)行名統(tǒng)一的進(jìn)行進(jìn)行統(tǒng)計(jì),如httpd,ngins或php-fpm等
#!/usr/bin/python #coding:utf8 from subprocess import Popen, PIPE import os #如果需要對httpd進(jìn)行統(tǒng)計(jì)可以把nginx改為httpd,其它服務(wù)統(tǒng)計(jì)同理,但有部分無法實(shí)現(xiàn),如oracle nginxpid = Popen(["pidof", "nginx"], stdout=PIPE) nginxpid = nginxpid.stdout.read().split() memsum = 0 for i in nginxpid: pidfile = os.path.join("/proc/", str(i), "status") with open(pidfile) as f: for mem in f: if mem.startswith("VmRSS"): pidmem = int(mem.split()[1]) memsum += pidmem print("%d %s" %(memsum,"KB"))實(shí)現(xiàn)代碼二:
此方法適用于某個用戶進(jìn)行使用內(nèi)存統(tǒng)計(jì),最后的結(jié)果是,一個用戶所使用的所有內(nèi)存信息,腳本使用方法,在執(zhí)行腳本的時候在腳本后面加上要統(tǒng)計(jì)的用戶名
#!/usr/bin/python #coding:utf8 """此腳本需要系統(tǒng)安裝smem軟件,安裝方法:yum -y install smem""" from subprocess import Popen, PIPE import sys allmeminfo = Popen(["smem", "-u"], stdout=PIPE) allmeminfo = allmeminfo.stdout.read().split("\n") for i in allmeminfo: if i.startswith(sys.argv[1]): meminfo = i.split() print("Process Name: "+meminfo[0]) print("Total Process: "+meminfo[1]) print("Physics Memroy Use: "+meminfo[5]+" KB")執(zhí)行結(jié)果如下:
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
當(dāng)前名稱:使用python實(shí)現(xiàn)統(tǒng)計(jì)Nginx進(jìn)程所占用的物理內(nèi)存-創(chuàng)新互聯(lián)
網(wǎng)址分享:http://fisionsoft.com.cn/article/dsgiss.html