给Apache做压力测试时遇到的问题
浏览:5920次 出处信息
一定是哪里出现了问题,因为:
1. 虽然load很高,但是cpu和io都很低,这种现象就比较奇怪
2. client端的负载很低
3. 曾经有过 2000/s的测试,而且当时的机器配置比现在的要差的多
当我使用同样的方法对nginx做测试的时候,nginx可以达到 2.2w/s 。
无奈之下,只好又把strace请出来了,发现写日志的地方很慢。
于是怀疑是磁盘问题; 使用hdparm测试了一下磁盘,没有问题; 又用 time dd ... 测试了一下,写的速度也 700+MB/s ; 回头想想,确认了一下nginx也是记日志的,而且都是同一块磁盘,大概不是磁盘问题了。
修改Apache 配置文件,把记日志的配置注释掉, 重新测试,发现可以达到 7k+/s 了;仔细观察Apache的配置,是这样写的:
TransferLog "|/data1/apache2/bin/rotatelogs /path/to/logfile"
于是,我想怀疑rotatelogs 这个程序了,但是似乎也没有道理; 那么就只剩下那个管道了,恩, 大概问题就出现在管道上了。
因为管道的大小为4k, 多进程写管道,单进程读管道,也难免会出现阻塞的情况;另外,load高的时候,io是很低的,所以说磁盘不是瓶颈。 管道是瓶颈
----------
如何利用管道来模拟一个cpu、io都很低,但是load很高的实例呢?
建议继续学习:
- Xvfb+YSlow+ShowSlow搭建前端性能测试框架 (阅读:54214)
- 安全测试与渗透测试区别 (阅读:23699)
- 使用Fiddler对手机应用进行抓包测试 (阅读:6927)
- 服务器性能测试工具推荐 (阅读:6475)
- WEB性能测试工具推荐 (阅读:5650)
- 可用性测试好助手——Morae软件的应用 (阅读:5500)
- 12款很棒的浏览器兼容性测试工具推荐 (阅读:4863)
- 可用性测试的权衡之道(二) (阅读:4803)
- 在线测试不同操作系统不同浏览器网页的显示效果 (阅读:4692)
- 性能测试工具sysbench简介 (阅读:4755)
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
扫一扫订阅我的微信号:IT技术博客大学习
后一篇:Nginx模块开发入门 >>
文章信息
- 作者:phpor <lijunjie1982@yahoo.com.cn> 来源: PHPor 的blog
- 标签: 压力测试 测试
- 发布时间:2011-07-06 23:44:05
建议继续学习
近3天十大热文
- [54] IOS安全–浅谈关于IOS加固的几种方法
- [52] android 开发入门
- [52] 如何拿下简短的域名
- [51] 图书馆的世界纪录
- [50] Oracle MTS模式下 进程地址与会话信
- [49] Go Reflect 性能
- [46] 【社会化设计】自我(self)部分――欢迎区
- [46] 读书笔记-壹百度:百度十年千倍的29条法则
- [36] 程序员技术练级攻略
- [29] 视觉调整-设计师 vs. 逻辑