Linux 服务器负载压力过大

Linux 服务器负载压力过大,第1张

1.安装iotop,使用iotop可以直观的看到哪个进程占用IO高,

2、用dstat ,dstat -t -n --top-io-adv

如果系统都没有如上命令,可以 用如下方法:

在系统上执行上面两命令

echo 1 >/proc/sys/vm/block_dump

dmesg |awk -F: ‘{print $1}’|sort|uniq -c|sort -rn|head -n 10

这条命令会打印出占用IO最高的前10个进程

执行完了记得恢复一下配置

echo 0 >/proc/sys/vm/block_dump

Iperf是一个网络性能测试工具。可以测试TCP和UDP带宽质量,可以测量最大TCP带宽,具有多种参数和UDP特性,可以报告带宽,延迟抖动和数据包丢失

因为产品上确定要要用的PHY是千M的,但模块接口又定义死了,只能用到100M。所以想测试下割掉几根线试下100M可行不。在测之前先测下千M模式下到底性能怎么样,之前别人一直说这我手头上这颗ARM根本上不了千M,虽然他标称的是可以支持千M。一准备工作做好了,开始。

我们使用的工具是iperf这个工具我是自己编译的。现在将我的过程写下来。iperf下载地址

先编译PC端工具:

1.解压源码

$ tar xzvf iperf-2.0.5.tar.gz

2.进入源码目录

$ cd iperf-2.0.5

3.配置源码 编译PC下的不用指定参数,用默认的即可

$ ./configure

4.编译 后面的-j4不是必须的。

$ make -j4

5.安装 这里要注意要用管理员权限

# make install

$ iperf -s 就可以启动服务端。

ARM端:

1.清理源码(就是刚才编译过的源码)

$ make distclean

2.设置环境变量 (就是你的ARM交叉编译工具链,根据自己的实际情况改)

$ export PATH=/home/gavin/ti-sdk-am335x-evm-05.06.00.00/linux-devkit/bin:$PATH

3.配置 指定主机为ARM g++编译器和gcc 这里根据自己的实际情况改

$ ./configure --host=arm CXX=arm-arago-linux-gnueabi-g++ CC=arm-arago-linux-gnueabi-gcc

4.修改源码目录下面的config.h(没配置之前是没有这个文件的),注释掉 #define malloc rpl_malloc

5.编译

$ make -j4

在iperf-2.0.5/src/下会生成iperf这个文件,这个就是我们需要的。将这个文件拷到ARM的文件系统中去。这样PC端和ARM端的都有了。

至于iperf的使用,就不多介绍了,直接在网上copy一段下来。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7191672.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-02
下一篇 2023-04-02

发表评论

登录后才能评论

评论列表(0条)

保存