首先确定下做压力测试的工具和性能的监控工具,这个压测的工具使用的是ab、监控工具使用的是nmon。
看下linux主机上的ulimit -n 的数据是多少,为改动过的是1024,最好要改的大一点。这个是linux下最大线程数,如果过小的话无法进行大并量的测试。
ab经行压力测试时的脚本我用的形式为:
1.(get方式)./ab -n 1000 -c 1000 -k http://xxx.xxxxx.com/synth/open/recurls.do?test=true
2.(post方式./ab -n 2500 -c 2500 -k -p postfile.ab http://xxx.xxxx.com/synth/open/getTheme.do postfile.ab中为json数据)
其中参数n为请求的次数,c为一次请求的并发次数,-k为keep_alive,一般出现链接被重置的错误时最好带上-k的参数。
还有好多参数,可以在ab--help中看下(这个是超级秘籍)。
贴出来
结果的每一项的意义就不多说了 在baidu google上一搜一堆的。
在每一次压测的同时,可以开启nmon进行实时监控,并打开nmon的记录功能进行数据的记录。
但是做完压测后发现点问题一直不得解惑,希望那位大虾给指点迷津:
1.出现failed requests 时 如何确定错误信息是什么,为什么会出现错误。
2.出现The timeout specified has expired (70007)、Connection reset by peer (104)错误时,是应该测试人员去解决,还是开发人员去调优?原文转自:http://my.oschina.net/hyp3/blog/70224