当前位置:首页 > 内存 > 正文

linux看内存使用(linux查看内存使用率百分比)

  • 内存
  • 2024-06-10 02:14:38
  • 8419

一、如何查看Linux下进程的IO活动状况00Hey,Linux您好,很高兴回答您的问题。服务器CPU占用率不高,负载比较高,所以检查IO。硬盘IO可以用vmstat或者iostat命令查看(也可以使用yum安装dstat),网络IO可以用iftop命令查看。但不知道哪个进程使用的硬盘IO比较高,通过搜索也找不到合适的命令,只好自己写一个统计进程的脚本。该脚本在CentOS6(kernel2.6或更高版本)上通过了python2.6测试。直接运行脚本,默认采集3秒数据,显示读写最高的前3个进程。如果想使用参数,可以使用命令“453”。由于测量部分相对容易编写,因此三个参数都应该写入。。#!/bin/python#-*-coding:utf-8-*-#文件名:end_fast_io_process#修订版:1.0#日期:2013-3-8#作者:SimonZang#Web:###ENDINITINFOimportimportstring_import的时间########='/proc/'re_find_process_number='^\d+$'####in/proc/$pid/io####defcollect_info():_tmp={}使用re_find_process_dir=e()读取和写入数据。re_find_process_number)r(sys_proc_path):ifre_find_process_(i):#查找进程name_name=open("%s%s/stat"%(sys_proc_path,i),"rb").read().split("")[1]#读取io信息rw_io=open("%s%s/io"%(sys_proc_path,i),"rb").readlines()for_infoinrw_io:cut_info=strip(_info).split(':')ifstrip(cut_info[0])=="read_bytes":read_io=int(strip(cut_info[1])))ifstrip(cut_info[0])=="write_bytes":write_io=int(strip(cut_info[1)])_tmp[i]={"name":process_name,"read_bytes":read_io,"write_bytes":write_io}return_tmpdefmain(_sleep_time,_list_num):_sort_read_dict={}_sort_write_dict={}_sort_write_dict={}#系统读写dataprocess_get=数据收集()(_sleep_time)process_info_list_second=collect_info()#收集读数据和写数据写入两个字典中forloopinprocess_info_list_():second_read_v=process_info_list_"cond_list_second[loop["write_bytes"]try:frist_read_v=process_info_list_frist[loop]["read_bytes"]Exception:frist_read_v=0try:frist_write_v=process_info_list_frist[loop]["write_bytes"]Exception:frist_write_vatel0秒获取##第一次data字段数据的差值find_sort_read_dict[loop]=second_read_v-frist_read_v_sort_write_dict[loop]=second_write_v-frist_write_v#对读写数据进行排序sort_read_dict=sort(_sort_read_(1)],reverse=true)sort_write_dict=sort(_sort_write_(),key=lambda_sort_write_dict:_sort_write_dict[1],reverse=true=True)#打印统计结果print"pidprocessread(bytes)pidprocesswrite(btyes_range)):(forpidprocessread(btyes))"(b)=sort_read_dict[_num][0]write_pid=sort_book[_num][0]res="%s"%read_pidres+=""*(8-lane(read_pid))+process_data_list_sec[read_pid]["name"]res+="""*(12-lane(process_data_list_sec[read_pid]["名称"))+"%s"%sort_read_dict[_num][1]res+=""*(12-len("%s"%sort_read_dict[_num][1]))+write_pidres+=""*(8-len(write_pid))+process_data_list_second[write_pid]["name"]res+=""*(12-len("%s"%process_info_list_second[write_pid]["name"])))+"%s"%type_write[_num][1]printprint"\n"*1where__name__=='__main__':try:_sleep_time=[1]except:_sleep_time=3try:_num=[2]except:_num=3try:Loop=[3]except:loop=1foriinrange(int(loop)):main(int(_sleep_time),int(_num))如果满意请点击。【接受答案】,如果还有疑问,请点击【提问】希望我的回答对您有用,希望您采纳!~O(∩_∩)O~
二、如何用十条命令在一分钟内检查linux服务器性能命令
该命令可以快速查看机器的负载状态。
命令
该命令将输出系统日志的最后10行。
命令
vmstat(8)命令会在每一行输出一些核心系统指标。
命令
该命令可以显示各个CPU的存在情况。
t命令
pidstat命令显示进程的CPU使用情况。
命令
命令
free命令可以查看系统内存的使用情况
8设备吞吐量。
命令
包含了前面几条命令的检查内容。