赞
踩
这是一个locust脚手架项目,有以下这些内容:
1、通过docker、docker-compose一键部署locust集群
2、集成了prometheus、influxdb、grafana性能测试结果监控
3、可供练习的测试接口
4、locust监控配置、跨节点通信、自定义参数、redis存储测试数据等示例代码参考
前置条件:已安装docker、docker-compose
git clone https://github.com/chenqinggang001/locust_scaffold.git
cd locust_scaffold
注意:可能会遇到没有权限的问题,需要给目录授权
chmod 777 -R $PWD
# locust镜像
docker build -t mylocust .
# flask镜像
docker build -f Flaskfile -t myflask .
注:如果需要更依赖执行
pipenv requirements > requirements.txt
,然后重新build镜像
或者也可以直接pull镜像
注意:pull镜像的方式,需要自己去docker-compose.yml中修改对应镜像名称
docker pull chenqinggang/locust
docker pull chenqinggang/flask
# locust脚本文件路径
# 注意!!!: 这是在docker容器中的路径,容器中所在工作路径是/mnt/locust,即当前目录映射在/mnt/locust
LOCUST_FILE_PATH=/mnt/locust/locustfiles/stu/stu_login.py
# 主机的IP地址,用于从机绑定主机,分布式情况下需要用主机的局域网或者公网IP
LOCUST_HOST=110.42.182.87
# 主机暴露的地址,0.0.0.0表示公网/局域网地址都可以访问
LOCUST_MASTER_HOST=0.0.0.0
# 不建议改端口,改了还得去docker-compose.yml改启动命令
WEB_PROT=8089
MASTER_PROT=5557
CONTAINER_NAME=mylocust
FLASK_APP=myflask
FLASK_APP_HOST=110.42.182.87
# redis配置,可以单独部署一个redis服务器,单独部署后修改redis_store.py文件中的配置即可
REDIS_VERSION=7.0.7
# your redis host
REDIS_HOST=110.42.182.87
REDIS_DIR=/data/redis
REAL_REDIS_PORT=6379
# your redis password
REDIS_PASSWORD=yourredispwd
启动loucst-master、loucst-worker、prometheus、influxdb、grafana、flask、redis
docker-compose up -d
分布式模式下,施压机器单独启动worker,cpu有多少个核心就启动多少个worker
docker-compose up -d --scale worker=3 worker
参考这篇文章:locust监控配置
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。