压力测试全流程经验分享

程序优化基础知识

影响程序性能的服务器指标: 内存 CPU 磁盘大小、以及磁盘IO 网络带宽。

压测不得不说的命令top

第一行,任务队列信息,同 uptime 命令的执行结果

系统时间:19:24:30 运行时间:125天 1小时 30 min, 当前登录用户:  2 user load average: 0.22, 0.30, 0.40 average后面的三个数分别是1分钟、5分钟、15分钟的负载情况。 load average数据是每隔5秒钟检查一次活跃的进程数,然后按特定算法计算出的数值。 这个数/(除以)逻辑CPU的数量反映出服务器的运行情况: 在 0.00 和 1.00 之间是通畅状态,理想状态是 0.70左右 load = 1表示CPU所有的资源都在处理请求,没有剩余的资源可以利用了。 load >= 2则表示CPU已经超负荷运作,另外还有一倍的线程正在等待处理。 load >= 5: 系统在超负荷运转了,服务随时是会挂掉。

第二行,Tasks — 任务(进程)

总进程:242 total, 运行:1 running, 休眠:241 sleeping, 停止: 0 stopped, 僵尸进程: 0 zombie

第三行,cpu状态信息

1.1%us【user space】— 用户空间占用CPU的百分比。

进程在用户地址空间中消耗 CPU 时间的百分比。像 shell程序、各种语言的编译器、数据库应用、web 服务器和JAVA服务都算是运行在用户地址空间的进程,绝大多数的 CPU 时间都是运行在用户空间。

0.3%sy【sysctl】— 内核空间占用CPU的百分比。

进程在内核地址空间中消耗 CPU 时间的百分比。所有进程要使用的系统资源都是由 Linux 内核处理的。当处于用户态(用户地址空间)的进程需要使用系统的资源时,比如:JAVA服务需要分配一些内存、或是执行 IO 操作。有或者一个程序创建一个子进程,此时就会进入内核态(内核地址空间)运行。事实上,决定进程在下一时刻是否会被运行的进程调度程序就运行在内核态。消耗在内核态的时间应该是越少越好。在实践中有一类典型的情况会使 sy 变大,那就是大量的 IO 操作,因此在调查 IO 相关的问题时需要着重关注它,比如:JAVA服务的日志打印。

0.0%ni【nice 】— 改变过优先级的进程占用CPU的百分比 。

可以通过 nice 值调整进程用户态的优先级。这里显示的 ni 表示调整过 nice 值的进程消耗掉的 CPU 时间。如

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值