服务端HTTP压力测试框架locust

locust使用篇

locust安装:pip install locustio

github:https://github.com/locustio/locust

官方文档:https://docs.locust.io/en/stable/

示例:locust_test.py


#coding=utf-8
from locust import HttpLocust, TaskSet, task
import cv2,random,os,json
class WebsiteTasks(TaskSet):
    @task(1)
    def home(self):
        self.client.get("/")
    @task(1)
    def login(self):
        self.head = {'Content-Type': 'application/json;charset=utf-8',
                     'token': 'planceholder',
                     'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36',
                     'userId': 'planceholder'
                     }
        self.form_data = {'account': 'admin',
                          'password': 'zs123YL!'}
        with self.client.post("/login", headers=self.head,data=json.dumps(self.form_data)) as response:
            print(response.status_code)
            print(response.content)
class WebsiteUser(HttpLocust):
    task_set = WebsiteTasks
    host = "http://118.89.220.161:8080"
    min_wait = 100
    max_wait = 300

终端中启动:locust -f locust_test.py,然后在浏览器中输入:http://127.0.0.1:8089设置后开始压力测试
在这里插入图片描述
locust启动参数说明:

https://www.cnblogs.com/fnng/p/7758368.html

https://www.cnblogs.com/leiziv5/p/7831397.html

深入浅出开源性能测试工具Locust(使用篇):https://debugtalk.com/post/head-first-locust-user-guide/

深入浅出开源性能测试工具Locust(脚本增强):https://debugtalk.com/post/head-first-locust-advanced-script/

服务端性能监控 glances


sudo apt-get install glances

在终端输入:glances
在这里插入图片描述

如果有报错,在.bashrc中添加export LC_ALL=C即可
在这里插入图片描述
参考:https://linux.cn/article-2782-1.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Django开发框架中使用Locust进行性能测试是一个常见的方案。Locust是一个开源的Python性能测试工具,可以用于模拟大量用户并发访问应用程序。 下面是使用Locust进行Django性能测试的简要步骤: 1. 安装Locust:使用pip命令安装Locust库,可以在终端中运行以下命令: ``` pip install locust ``` 2. 创建Locust测试脚本:在项目中创建一个Python脚本,用于编写Locust测试脚本。在脚本中,你需要导入Locust库,并定义一个Locust子类,定义用户行为和任务。 例如,你可以创建一个名为`performance_test.py`的文件,其中包含以下内容: ```python from locust import HttpUser, task, between class MyUser(HttpUser): wait_time = between(1, 3) @task def my_task(self): self.client.get("/your-django-url") ``` 在上述示例中,我们定义了一个名为`MyUser`的Locust子类,指定了用户请求之间的等待时间,并定义了一个`my_task`任务,该任务发送GET请求到你的Django应用程序的某个URL。 3. 运行Locust测试:在命令行中切换到包含测试脚本的目录,并运行以下命令来启动Locust测试: ``` locust -f performance_test.py --host=http://your-django-app.com ``` 这将启动Locust的Web界面,并显示有关测试的统计信息。你可以在Web界面上设置并发用户数、用户生成速率等参数,并监控性能指标。 4. 执行性能测试:在Locust的Web界面上,你可以设置并发用户数和用户生成速率,并开始执行性能测试。Locust将模拟这些用户的并发访问行为,并收集有关请求响应时间、错误率等指标的统计信息。 你可以在Locust的Web界面上查看实时结果,并导出测试结果以进行后续分析。 通过使用Locust进行Django性能测试,你可以模拟实际用户的行为,评估Django应用程序在并发负载下的性能表现,并识别潜在的性能瓶颈。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值