前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >性能测试框架 locust 入门教程

性能测试框架 locust 入门教程

作者头像
星哥玩云
发布2022-07-19 16:07:47
9010
发布2022-07-19 16:07:47
举报
文章被收录于专栏:开源部署

1、安装 这个工具是用Python写的,首先我们要安装框架

首先升级pip,不然可能会报错 pip install --upgrade pip

然后安装Locust pip install Locust

安装完成

2、编写Locust file

这里是压测软件的主要功能

vim locustfile.py

from locust import HttpLocust, TaskSet

#登陆操作 def login(l):     l.client.post("/phpadmin/index.php", {"pma_username":"hugw", "pma_password":"RedHat"})

#登出操作 def logout(l):     l.client.post("/phpadmin/logout.php", {"db":"&", "token":"be2cb767a5829a398ef5a4c0dcafe504"})

#请求index def index(l):     l.client.get('/phpadmin/index.php')

class UserBehavior(TaskSet):     tasks = {index}

#执行登陆和登出     def on_start(self):         login(self)

    def on_stop(self):         logout(self)

class WebsiteUser(HttpLocust):     task_set = UserBehavior     min_wait = 3000     max_wait = 6000

启动压测程序 如果配置文件名字是locustfile.py,那么直接运行就好 启动成功会监听8089端口, 这里的 http://192.168.1.9 是要压测的网站域名

[root@slave locust]# locust -H http://192.168.1.9 [2018-04-12 19:41:37,086] slave/INFO/locust.main: Starting web monitor at *:8089 [2018-04-12 19:41:37,086] slave/INFO/locust.main: Starting Locust 0.8.1

配置压测集群(可选)

启动压测主程序,跟上面一样,后面加上参数 --master 启动成功会监听8089端口, 这里的 http://192.168.1.9 是要压测的网站域名

[root@slave locust]# locust -H http://192.168.1.9 --master [2018-04-12 22:20:12,889] slave/INFO/locust.main: Starting web monitor at *:8089 [2018-04-12 22:20:12,891] slave/INFO/locust.main: Starting Locust 0.8.1 [2018-04-12 22:20:47,669] slave/INFO/locust.runners: Client 'k8s_cf9d5e7c4238f74363180e5b3dcb0ae4' reported as ready. Currently 1 clients ready to swarm. [2018-04-12 22:21:02,066] slave/INFO/locust.runners: Sending hatch jobs to 1 ready clients [2018-04-12 22:21:12,069] slave/INFO/locust.runners: Resetting stats

启动slave 先把 locustfile.py 分发到slave机器上,安装locust,然后启动

[root@k8s locust]# locust -H http://192.168.1.9 --slave --master-host=master_IP [2018-04-12 02:21:48,045] k8s/INFO/locust.main: Starting Locust 0.8.1 [2018-04-12 02:22:02,487] k8s/INFO/locust.runners: Hatching and swarming 20 clients at the rate 2 clients/s... [2018-04-12 02:22:12,509] k8s/INFO/locust.runners: All locusts hatched: WebsiteUser: 20 [2018-04-12 02:22:12,509] k8s/INFO/locust.runners: Resetting stats

然后登陆master压测就行了

3、开始压测

填写你要模拟的用户数量,这里填500用户,以每秒50数量增加,点击start 开始

查看压测请求情况

查看图表

参考文档:https://docs.locust.io/en/latest/quickstart.html

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档