如意云-莘家小站
  • 首页
  • 友链
  • 关于
如意云-莘家小站
这是一个记录生活和技术学习的个人博客.
  1. 首页
  2. 网络与系统
  3. 正文

记一次非生产环境的压力测试

2021年1月29日 2462点热度 1人点赞 0条评论

索引

Toggle
  • 介绍
  • 设置
  • 测试

介绍

使用的工具为go-stress-testing-win.exe,作者的github地址:https://github.com/link1st/go-stress-testing,在文章中简单的介绍了常用的一些压测工具,我使用的是作者提供的压测工具。

压测的必要性和意义:https://github.com/link1st/go-stress-testing#2压测

用法如下:https://github.com/link1st/go-https://github.com/link1st/go-stress-testing#12-%E9%A1%B9%E7%9B%AE%E4%BD%93%E9%AA%8Cstress-testing

如何计算压测指标:https://github.com/link1st/go-stress-testing#24-%E5%A6%82%E4%BD%95%E8%AE%A1%E7%AE%97%E5%8E%8B%E6%B5%8B%E6%8C%87%E6%A0%87

发出测试请求的机器,I5-6500,8G内存。

接收请求的机器,Xeon X5675,16G内存

设置

测试前需设置tcp动态端口范围,运行

netsh int ipv4 show dynamicport tcp

查看动态端口范围。修改一下起始端口:

netsh int ipv4 set dynamicport tcp start=2000 num=63000

再次查看,如图

接收机器设置动态端口

测试

当活动连接(Active connections)达到32000左右时,会发生wsarecv: An existing connection was forcibly closed by the remote host。此时的keepalive_timeout为30。在这种情况下,应该是服务器的可用活动连接耗尽导致的,当超过30s后,一些连接被释放,测试又可以继续进行。

上图所示,印证了猜想

最大请求并发数150,请求数为1000,当keepalive_timeout为30时,出现请求失败,如图

测试结果

此时接受的机器cpu占用为8%,内存占用25%。只是简单的并发测试,并没有涉及到数据库的读写操作。

本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可
标签: 瞎搞
最后更新:2024年12月27日

jiawei

这个人很懒,什么都没留下

点赞
< 上一篇
下一篇 >

文章评论

razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
取消回复
  • Emby
  • Synology
  • Unraid
  • 文段分享
  • 生产力小工具
  • 生活记录
  • 程序开发实例
  • 网络与系统
  • 逆向工程
  • 遇到问题

2019-2025

Theme Kratos Made By Seaton Jiang

冀ICP备18022758号-2

冀公网安备13072802000034号