python计算apache总内存

#!/usr/bin/env python
import os
from subprocess import Popen, PIPE
def getPid():
    p=Popen([‘pidof‘,‘httpd‘],stdout=PIPE,stderr=PIPE)
    pids = p.stdout.read().split()
    return pids

def paresPidFile(pids):
     sum =0
     for i in pids:
         fn = os.path.join(‘/proc/‘,i,‘status‘)
         with open(fn) as fd:
            for line in fd:
                 if line.startswith(‘VmRSS‘):
                     http_mem =int(line.split()[1])
                     sum += http_mem
                     break
     return sum
def total_mem(f):
    with open(f) as fd:
        for line in fd:
             if line.startswith(‘MemTotal‘):
                    total_mem =int(line.split()[1])
                    return total_mem
if __name__ ==‘__main__‘:
    pids = getPid()
    http_mem = paresPidFile(pids)
    total = total_mem(‘/proc/meminfo‘)
    print"Apache memory is: %s KB"% http_mem
    print "Percent: %.2f%%"%(http_mem/float(total)*100)

  

时间: 2024-08-11 07:44:21

python计算apache总内存的相关文章

Python计算斐波那契数列

利用Python计算第一个达到一百万位数的斐波那契数列各位数之和 结果为4501552 以下是我用到的代码,不是中间需要一些人工操作来加快收敛性,有兴趣读者可以写代码加快收敛 首先执行这个,可以大致确定一百万个数所在斐波那契序列的位置 i=1 j=1 k=i+j count=3 while count<4850000: i=j j=k k=i+j count+=1 result=str(k) print('k长度') k_len=len(result) print(k_len) sum=0 fo

使用Python统计Linux系统内存

写得比较简单,支持-m -g -k选项 #!/usr/bin/python #*-*coding:utf8*-* """适用于在/proc/meminfo中提供了可用内存MemAvailable的系统使用""" from optparse import OptionParser import sys parser = OptionParser() parser.add_option("-k",                 

数学之路-python计算实战(4)-Lempel-Ziv压缩(2)

Format characters have the following meaning; the conversion between C and Python values should be obvious given their types. The 'Standard size' column refers to the size of the packed value in bytes when using standard size; that is, when the forma

python 获取linux的内存信息

1.安装psutil源码 https://pypi.python.org/pypi?:action=display&name=psutil#downloads 找到psutil-5.2.2.tar.gz 点击即可下载 shell # tar xzvf psutil-5.2.2.tar.gz shell # cd psutil-5.2.2 shell # python setup.py install 2.使用psutil获取内存信息 终端输入python shell # python Pytho

计算密集型分布式内存存储和运算平台架构

避嫌声明:所有图文都是根据自己的理解原创,且已离开这家公司三年以上,不存在保密协议,写此文只是用来分享知识.探究不足. 牢骚:本来想弄个ppt交互展示的,不过我的js权限还没批... 1. 相关概念 1.1 内存数据库 关系型数据库处理永久.稳定的数据,内存数据库就是将其数据放在内存中,活动事务只与内存数据打交道,重新设计了体系结构并且在数据缓存.快速算法.并行操作方面也进行了相应的改进,所以数据处理速度比磁盘数据库要快很多,一般都在10倍以上.但它不容易恢复,可能暂时不一致或非绝对正确的,要求

Android 获取手机总内存和可用内存等信息

在android开发中,有时候我们想获取手机的一些硬件信息,比如android手机的总内存和可用内存大小.这个该如何实现呢? 通过读取文件"/proc/meminfo"的信息能够获取手机Memory的总量,而通过ActivityManager.getMemoryInfo(ActivityManager.MemoryInfo)方法可以获取当前的可用Memory量. "/proc/meminfo"文件记录了android手机的一些内存信息,在命令行窗口里输入"

python源码分析----内存分配(1)

上面的一篇粗略的介绍了一下python的对象结构,这篇来分析一个非常重要的部分,内存分配... 好像自己看的源代码,只要是跟C语言相关的,都在内存处理方面做了相当多的工作....例如nginx,它也有实现自己的pool,python当然也不例外.... python在内存分配上面分成了4个层次吧... _____   ______   ______       ________ [ int ] [ dict ] [ list ] ... [ string ]       Python core

用python计算lda语言模型的困惑度并作图

转载请注明:电子科技大学EClab——落叶花开http://www.cnblogs.com/nlp-yekai/p/3816532.html 困惑度一般在自然语言处理中用来衡量训练出的语言模型的好坏.在用LDA做主题和词聚类时,原作者D.Blei就是采用了困惑度来确定主题数量.文章中的公式为: perplexity=exp^{ - (∑log(p(w))) / (N) } 其中,P(W)是指的测试集中出现的每一个词的概率,具体到LDA的模型中就是P(w)=∑z p(z|d)*p(w|z)[z,d

apache占用内存高解决办法

我用512M的vps,访问量不大,但内存占用很大,甚至宕机. 我用top,然后shitf+m发现,httpd占用内存极大.经过网上找资料设置后,用过一段时间终于没再出现内存问题了. 首先查找配置文件的位置,可以用如下命令: find / -name httpd.conf找到配置文件/usr/local/apache/conf/extra/httpd-mpm.conf,修改设置Apache MPM Prefork模块 StartServers 3MinSpareServers 2MaxSpareS