Linux下的高性能轻量级Web服务器(八)

8. 压力测试

至此,这个项目就已经完成了,但一个服务器项目,你在本地浏览器键入localhost:9009发现可以运行无异常还不够,你需要对他进行压测(即服务器并发量测试),压测过了,才说明你的服务器比较稳定了。

这里使用了Webbench软件来进行测试(项目里已经包含此软件),在 webbench-1.5 目录下打开终端运行命令(如果提示权限不够,请使用chmod命令修改文件或目录权限)。

./webbench -c 9000 -t 5 http://ip:port/
-c 表示客户端数, -t 表示时间
-c 后的参数请根据服务器硬件配置进行合理选择

然后就可以得到压测结果了

  • 并发连接总数:8500
  • 访问服务器时间:5s
  • 所有访问均成功
  • QPS:5483




最后,我们再来回顾一下服务器的框架:

项目已上传到百度云,需要的请自行下载
链接:https://pan.baidu.com/s/1JNshVc-0S3ilET5RVzMHpQ
提取码:ZYZH

快速运行

  • 服务器测试环境
     Ubuntu版本20.04.5 LTS
     MySQL版本8.0.32
  • 浏览器测试环境
     Windows、Linux均可
     Chrome
     FireFox
     其他浏览器暂无测试
  • 创建数据库和表
// 建立yourdb库
create database webserver;

// 创建user表
USE webserver;
CREATE TABLE user(
    username char(50) NULL,
    passwd char(50) NULL
)ENGINE=InnoDB;

// 添加数据
INSERT INTO user(username, passwd) VALUES('name', 'passwd');

  • 修改main.c中的数据库初始化信息
// user和password修改为数据库的登录名和密码
// webserver修改为上述创建的数据库名
connPool->init("localhost", "user", "password", "webserver", 3306, 8);

  • 修改http_conn.cpp中的root路径
// 修改为root文件夹所在路径,可在root目录下打开终端,使用pwd命令查看当前路径
const char* doc_root="/home/TinyWebServer/root";

  • 生成server

make server

  • 启动server

./server port

  • 使用浏览器访问

ip:port

posted @ 2023-03-09 16:24  夜听风雨声`  阅读(254)  评论(0)    收藏  举报