开发了一个简易的在线压测工具,可以高效测试 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
    启动成功截图如下:
    Laravel

三、使用

  • 安装启动成功之后,可以访问:http://ip:11111,默认登录账号:admin,密码:admin

  • 添加一个压测任务,配置相关接口ip、端口、路径、请求方法、请求参数、压测驱动、压测持续时间等信息

  • 启动压力测试,查看压测结果
    找到需要压测的任务,点击启动压测
    Laravel
    压测完成可,查看压测结果数据
    Laravel

四、总结

  • 该压测工具支持Docker快速启动,安装运维简单
  • 提供在线管理界面,无需再手写命令、执行脚本等复杂操作,降低压测门槛
  • 可以方便测试人员对接口进行压力测试,及时了解关键接口的性能状况
本作品采用《CC 协议》,转载必须注明作者和本文链接
我只想看看蓝天
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!