一.nethogs介绍 分享一个linux 下检测系统进程占用带宽情况的检查.来自github上的开源工具. 它不依赖内核中的模块.当我们的服务器网络异常时,可以通过运行nethogs程序来检测是那个程序占用了大量带宽.节省了查找时间. 二.安装方法 1.在epel 源中可以直接yum 安装 yum install libpcap nethogs -y 2.源码方式安装 2.1 安装c++ 环境 [root@SaltMaster ~]# yum install gcc-c++ libpcap-d…
线程是现代操作系统上进行并行执行的一个流行的编程方面的抽象概念.当一个程序内有多个线程被叉分出用以执行多个流时,这些线程就会在它们之间共享特定的资源(如,内存地址空间.打开的文件),以使叉分开销最小化,并避免大量高成本的IPC(进程间通信)通道.这些功能让线程在并发执行时成为一个高效的机制. 在Linux中,程序中创建的线程(也称为轻量级进程,LWP)会具有和程序的PID相同的“线程组ID”.然后,各个线程会获得其自身的线程ID(TID).对于Linux内核调度器而言,线程不过是恰好共享特定资源…
原文内容来自于LZ(楼主)的印象笔记,如出现排版异常或图片丢失等问题,可查看当前链接:https://app.yinxiang.com/shard/s17/nl/19391737/9652651a-7449-4e8e-b77e-1c60ea8b7d12 本篇主要说明以下问题: 1.服务器 buffer/cache 的产生原因和释放buffer/cache 的两种方式(自动 & 手动) 2.生产环境遇到服务 buffer/cache 过高如何排查是由那几个进程引起的(hcache ,lsof 的使…
鉴于linux下线程的广泛使用 我们怎么查看某个进程拥有的线程id了 现在很多服务的设计 主进程->子进程->线程(比如mysql,varnish) 主进程负责侦听网络上的连接 并把连接发送给子进程 子进程派生线程去处理这些线程 mysql(父进程460,子进程863) ? - S : /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/storage/mysql/backup --pid-file=/storag ? - Sl : \_ /…
这东西,时间久不用总容易忘....记下来! 1. 在 LINUX 命令平台输入 1-2 个字符后按 Tab 键会自动补全后面的部分(前提是要有这个东西,例如在装了 tomcat 的前提下, 输入 tomcat 的 to 按 tab).2. ps 命令用于查看当前正在运行的进程.grep 是搜索例如: ps -ef | grep java表示查看所有进程里 CMD 是 java 的进程信息ps -aux | grep java-aux 显示所有状态ps3. kill 命令用于终止进程例如: kil…
如果系统的物理内存用光了,则会用到swap.系统就会跑得很慢,但仍能运行;如果Swap空间用光了,那么系统就会发生错误.通常会出现“application is out of memory”的错误,严重时会造成服务进程的死锁.所以要高度重视. free free -m 就能看出当前系统所使用的swap了.那么如何查看哪些进程使用了swap呢,这样好针对性的做出优化. top Centos(6.0之前): top只能看到swap总使用量 网上很多人说top+f+p能显示出来swap.可是按完f查看…
转自:http://blog.csdn.net/xiangliangyu/article/details/8213127 如果系统的物理内存用光了,则会用到swap.系统就会跑得很慢,但仍能运行;如果Swap空间用光了,那么系统就会发生错误.通常会出现“application is out of memory”的错误,严重时会造成服务进程的死锁.所以要高度重视. free free -m 就能看出当前系统所使用的swap了.那么如何查看哪些进程使用了swap呢,这样好针对性的做出优化. top…
top -b -i -n 1 查看僵死进程命令 ps -A -o stat,ppid,pid,cmd | grep -e '^[Zz]' 查看apache 当前进程数 ps -ef | grep httpd | wc -l 实时检测HTTPD连接数:watch -n 1 -d "pgrep httpd|wc -l" netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}' 返回结果示例: LAST_ACK…
  目前我们的监控,可以发现消耗较高CPU的进程(阀值为3个CPU),通过监控我们可以找到消耗较高CPU的进程号: 通过进程号pid,我们在linux上可以通过top –H –p <pid>命令,显示该进程中每个线程的CPU资源消耗情况. 然后通过threadump命令,可以打印出某个应用JVM中某时刻所有线程的调用情况,通过线程号我们就可以对应找到线程调用的程序了. 另: 使用jrcmd命令也可以进行threadump和进程执行线程情况的查看,但该命令为jrockit 5.0 新带的命令,在…
Linux在启动一个进程时,系统会在/proc下创建一个以PID命名的文件夹,在该文件夹下会有我们的进程的信息 通过ll或ls –l命令即可查看. ll /proc/PID cwd符号链接的是进程运行目录: exe符号连接就是执行程序的绝对路径: cmdline就是程序运行时输入的命令行命令: environ记录了进程运行时的环境变量: fd目录下是进程打开或使用的文件的符号连接.…
python多进程代码 http://blog.csdn.net/yfkiss/article/details/6729364  Linux下多线程查看工具(pstree.ps.pstack) test.py #coding=utf-8 import multiprocessing import time def func(msg): print "msg:", msg time.sleep(100) print "end" if __name__ == "…
一.现象 1)钉钉告警不断,告警如下CPU使用达到100% 普罗米修斯监控 2)查看数据库,没有发现比平时同一时段,业务量的增加.但是,数据库显示latch free等告警,验证了CPU使用过高导致. 3)Linux系统 vmstat 1查看系统负载,发现us.sy很高,加起来达到100%.而且,in/cs比平时高出很多. 平时都是2000-6000左右,现在跑到10000多 4)查看磁盘使用情况 发现系统盘在清除完部分日之后,一直在增长,而且是快速增长 二.使用pidstat查看进程使用磁盘的…
linux中查看特定端口对应的进程以及进程的pid可以使用下面指令: lsof -i:port_number 杀死进程的指令是: kill -s 9 pid…
说明: 1.Linux下没有原生的查看IO的软件,只能额外装. 2.如果使用vmstat或者cat /proc/$PID/io,这些看的都太复杂了. 下面是安装的比较直观的软件: 1.iostat 这个只能计算总的IO,没有单独某个进程的. 安装: #Ubuntu sudo apt-get install sysstat #CentOS sudo yum install sysstat 2.iotop 这个可以针对单个进程进行查看. sudo iotop -p $PID -d 1 安装: #Ub…
Linux 中使用top 或 ps 查看进程使用kill杀死进程 1.使用top查看进程: $top 进行执行如上命令即可查看top!但是难点在如何以进程的cpu占用量进行排序呢? cpu占用量排序执行下操作: 按大写O再按k再敲回车,然后使用R就可以以cpu占用量进行查看了!下面贴出top的技巧命令: “更改显示内容通过 f 键可以选择显示的内容.按 f 键之后会显示列的列表,按 a-z 即可显示或隐藏对应的列,最后按回车键确定. 按 o 键可以改变列的显示顺序.按小写的 a-z 可以将相应的…
本文介绍linux如何查看端口被哪个进程占用的方法: 1.lsof -i:端口号 2.netstat -tunlp|grep 端口号 都可以查看指定端口被哪个进程占用的情况 [步骤一]lsof -i lsof -i 用以显示符合条件的进程情况,lsof(list open files)是一个列出当前系统打开文件的工具.以root用户来执行lsof -i命令,如下图…
ps:进程的静态列表(Process status) - PID:进程号,每个进程独一无二的标识符(关闭进程需要使用) - TTY:终端所属,表明进程产生于哪一个终端,对于多用户使用的Linux服务器有区分用户的功能 - TIME:进程运行了多久 - CMD:进程源于哪个程序 - ps -ef:列出所有用户子啊所有终端的所有进程 - ps -efH:按乔木状列出所有进程,有的进程是某些进程的子进程 - ps -u 用户名:列出特定用户运行的进程 top:进程的动态列表   kill:结束进程 -…
以nginx 为例1.toptop -b -n 1 |grep nginx|awk '{print "VIRT:"$5,"RES:"$6,"cpu:"$9"%","mem:"$10"%"}' 或者简单的top -p 进程id. 2. ps aux | grep nginxVSZ -- 虚拟地址空间大小  --> 与top 的 VIRT 对应RSS -- 实际物理内存大小  --&g…
1.先用ps查询进程号 ps -aux|grep 进程名字 2.查看更详细的内存占比 cat /proc/3664/status 返回结果:(其中VmRSS为进程所占用的内存)…
lsof -i:8899 输出: COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAMEjava 38889 root 329u IPv6 5883661 0t0 TCP *:ospf-lite (LISTEN) ps -aux | grep 38889 查出占用的程序…
方法一: $ iotop -oP 命令的含义:只显示有I/O行为的进程 测试结果: 方法二: $ pidstat -d 1 命令的含义:展示I/O统计,每秒更新一次 测试结果:…
$ iotop -oP命令的含义:只显示有I/O行为的进程…
首先得知道你要查的进程的PID: 比如我要查看看我unimrcpserver的线程 第二种方法:top top命令可以实时显示各线程情况.就相当于windows的资源管理器.…
top -b -n 1 | grep java| awk '{print "PID:"$1",mem:"$6",CPU percent:"$9"%","mem percent:"$10"%"}'…
命令: ps ef|grep redis 返回上一级cd ..…
netstat -napo |grep "php-fpm" | wc -l…
ps -ef|grep java 1. jps 或 ps –ef|grepjava (获取PID)…
一:Linux查看当前使用的网卡          ifconfig命令可以查看当前linux 系统有多少个网卡. [app@p2-app2 ~]$ ifconfig br-2e5b046a02d5: flags=<UP,BROADCAST,MULTICAST> mtu inet 172.20.2.1 netmask 255.255.255.0 broadcast 0.0.0.0 ether ::bc:f2:c9:ac txqueuelen (Ethernet) RX packets byte…
如果系统只有一个处理器,那么给定时刻只有一个程序可以运行.在多处理器系统中,真正并行运行的进程数目取决于物理CPU的数目.内核和处理器建立了多任务的错觉,是通过以很短的间隔在系统运行的应用程序之间不停切换做到的.由此,以下两个问题必须由内核解决:除非明确要求,否则应用程序不能彼此干扰:CPU时间必须在各种应用程序之间尽可能公平共享(一些程序可能比其他程序更重要).本篇博文主要涉及内核共享CPU时间的方法以及如何在进程之间切换(内核为各进程分配时间,保证切换之后从上次撤销其资源时执行环境完全相同)…
1. 如何查看一个进程的详细信息,如何追踪一个进程的执行过程 通过pstree命令(根据pid)进行查询进程内部当前运行了多少线程:# pstree -p 19135(进程号) 使用top命令查看(可以查看到线程情况)# top -Hp 19135 2. 跟踪某个应用程序的运行过程 跟踪已运行的进程:strace -p pid 3. 在 Linux 系统下查看 CPU.内存.磁盘.IO.网卡情况: # cat /proc/cpuinfo      # 查看CPU信息 # ps -ef      …