如何实现CentOS7服务器中的压力测试,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
使用apache httd的ab工具可以进行压力测试。-n 2000总的请求数,-c 200是并发数,最高并发数为20000。
ab -n 2000 -c 200 http://localhost/
如果访问服务器的请求和并发量很大(如请求数量超过20万),系统会认为受到了SYN flood攻击,从而采取保护措施。在高并发测试的时候,会出现一下错误:
apr_socket_recv: Connection reset by peer (104)
可以设置内核参数,关闭保护功能
vim /etc/sysctl.conf
增加一下配置:
net.ipv4.tcp_syncookies = 0
让配置生效
sysctl -p
nginx不愧是性能高手,设置好worker_processes和worker_connections,内核关闭net.ipv4.tcp_syncookies,静态文件可轻松达到20000并发量。
ab -n 200000 -c 20000 http://localhost/
tomcat在开启apr的情况下,静态文件处理能力约为nginx的1/10。还是有很大差距。
很多客户会要求高并发量,但要支撑高并发有很多限制条件,比如带宽。
假如10000并发量,每秒访问一次,每次请求的文件大小为10KB,则数据量100M,大约需要1000Mbps带宽。而一般服务器有10Mbps已经不错了,通常一个机柜(约20台服务器)共享100Mbps带宽。
10000个人使用,并不代表10000个并发,如果前后错开10秒,相当于1000并发。如果10000个人平均每2分钟点击一次,则平均并发数为100。当然一次点击可能不止一个请求,一个页面可能会包含很多图片、js、css等文件。
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注亿速云行业资讯频道,感谢您对亿速云的支持。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。