【小洛的VLOG】Web 服务器高并发压力测试(Reactor模型测试)

目录

引言

工具介绍

环境介绍

测试结果


个人主页:东洛的克莱斯韦克-CSDN博客

引言

大部分的网络通信都是支持TCP/IP协议栈,为了保证通信的可靠性,客户端和服务端之间需要建立链接。服务端能并发处理多少个链接,平均每秒钟能处理多少个请求,服务器每秒的带宽是多少都是指标。

对于性能测试来说,一定要结合服务器的硬件配置和软件配置来谈测试的结果,像这种测试一定要跨网络进行,本地回环测试的数据没有意义

工具介绍

Webbench ,这个工具大家可以搜一下相关的文章,很轻量化,上手成本很低。下载下来只需make编译一下即可,如果你编译不过的话就是有个头文件会报错,根据报错提示,把Webbench源码里报错的头文件去掉就可以啦~

Webbench的原理也很简单,就是创建多进程然后同时向服务端发起请求。

环境介绍

我用了两台云服务器来模仿服务端和客户端,配置都是2核2G的(恼火),没钱买配置高的服务器(哭)。软件方面是我模仿muduo库写的一个Reactor模型,目前是单进程处理,就是我的进程既要监听链接又要处理连接上的IO事件。

测试结果

我用1000个进程不断地向服务端发送请求,持续时间是1小时。至于为什么是1000个而不是更大量级,是因为我的服务端配置太低,链接并发量太多,进程向系统的epoll模型中注册文件描述符就会失败。

  • 成功处理的请求总数:327,000 请求;
  • 页面处理速度:每分钟5450页;
  • 数据传输速率:大约16,035 字节/秒;
  • 重要的是,所有请求都是成功的,没有失败。
  • 页面处理速度:5450 页/分钟
  • 数据传输速率:16,035 字节/秒(约 16 KB/s)
  • 速度指标表示每分钟处理的网页数量相对较高

从结果可以看到,虽然服务器配置比较低,但在这种高负载下仍然表现得相当不错(比较满意)。这意味着服务器能够支持相对较高的并发用户!

相关推荐
东鹏特饮4 分钟前
本机状态监控页面html
运维·css·html·css3
2501_9159214319 分钟前
KXBuild CI 实操,Windows/Linux 服务器接入 Jenkins 打包 iOS IPA
服务器·windows·vscode·ios·ci/cd·个人开发·敏捷流程
Gauss松鼠会22 分钟前
GaussDB 整体架构解析
运维·服务器·网络·数据库·sql·架构·gaussdb
Gauss松鼠会42 分钟前
GaussDB 中 gsql 与 DBeaver(JDBC)客户端工具查询时间不一致:原因、排查与处理
运维·服务器·数据库·sql·gaussdb·经验总结
谙弆悕博士1 小时前
debian快速换源
linux·运维·windows·debian·下载·换源·网络问题
.道阻且长.1 小时前
Linux基本开发工具:编译器gcc/g++
linux·运维·服务器·职场和发展
Decay__7 小时前
05_MySQL 常用 SQL 大全 —— 诊断、管理、优化辅助 SQL 与三大系统库速查
运维·数据库·sql·mysql·架构
贞明电子9 小时前
工业三色报警灯怎么接入项目系统?开关量与RS485控制应用指南
运维·网络·微信公众平台·贞明电子
HideF10 小时前
Linux
linux·服务器·网络
万联WANFLOW10 小时前
海外网络故障怎么排查?Cloudflare 三季度断网报告解读与 mtr 实战
运维·网络·故障分析