开发了一个简易的在线压测工具,可以高效测试 API 接口性能,支持Docker部署
一、简介
- 这是一个简易的在线压测工具,可以对 API 接口/页面、websocket服务等进行压力测试,检验服务的并发能力
- 使用 thinkphp + ant design pro 构建,压测能力驱动基于 wrk 、 php 多进程+协程实现
- 支持在线授权访问、压测任务管理、执行压测任务、压测历史记录等功能
- 支持Docker一键快速搭建
- 项目源码地址参考:github.com/luler/hello_benchmark
- 该项目的工作原理和技术架构可参考下图:
二、安装
- 准备一台安装好Docker、docker-compose软件环境的主机,要求配置至少在1C2G以上
- 拉取项目代码
git clone https://github.com/luler/hello_benchmark.git
- 进入项目代码根目录,编辑 docker-compose.yml ,检查是否存在端口、目录权限问题, 默认配置内容如下
services: php_nginx: image: registry.cn-shenzhen.aliyuncs.com/luler/linux_php_nginx:php7.3 restart: always privileged: true ports: - 11111:80 #默认占用主机11111端口,确保不被占用,并且已经开放防火墙(可修改) volumes: # 以下目录映射配置不清楚可以不做修改 - ./config/nginx/conf:/usr/local/nginx/conf - ./config/php/etc:/usr/local/php/etc - ./config/init.sh:/init.sh - ./code/api:/home/wwwroot/api - ./code/web/dist:/home/wwwroot/web/dist - ./code/wrk.zip:/home/wwwroot/wrk.zip - ./runtime/wwwlogs:/home/wwwlogs - ./config/supervisor/supervisord.conf:/etc/supervisord.conf - ./config/supervisor/supervisord.d:/etc/supervisord.d
- 配置完成即可执行下面命令一键启动服务
启动成功截图如下:docker-compose up -d
三、使用
安装启动成功之后,可以访问:http://ip:11111,默认登录账号:admin,密码:admin
添加一个压测任务,配置相关接口ip、端口、路径、请求方法、请求参数、压测驱动、压测持续时间等信息
启动压力测试,查看压测结果
找到需要压测的任务,点击启动压测
压测完成可,查看压测结果数据
四、总结
- 该压测工具支持Docker快速启动,安装运维简单
- 提供在线管理界面,无需再手写命令、执行脚本等复杂操作,降低压测门槛
- 可以方便测试人员对接口进行压力测试,及时了解关键接口的性能状况
本作品采用《CC 协议》,转载必须注明作者和本文链接