赞
踩
在业务开发完成,并且功能测试也正常,接下来就需要接口性能进行测试,也叫压力测试,即对接口进行极限施压,找到接口瓶颈。对于一般接口,需保证请求的耗时在300ms
左右最后,但一些接口涉及的业务逻辑复杂,导致耗时严重,并且用户请求量也大,因此需要对该接口进行测试,对照测试的结果修改代码进行优化,比如加缓存等等。所以,如何去测试接口性能的好坏呢?接下来就使用python
来搭建一个简单的压测脚本。
环境包括:Python 3.11
,Locust
包
其中Python可以去官网下载安装:Python3.11,具体的安装步骤可以百度。
当Python
安装好之后,需安装Locust
包。以下是官网对于Locust
的介绍。
输入如下命令,安装Locust
安装好Locust
后,编写压测的python
脚本
from locust import HttpUser, task
from locust import HttpUser, task
class LocustTest(HttpUser):
host = "http://localhost:8084" # host
def on_start(self):
print("start working")
@task(1)
def locust_test(self):
header = {"Content-Type": "application/json"}
data = {}
print("正在请求!!!")
self.client.post("/locust-test/print-log", data=data, headers=header)
host
:服务地址header
格式,data
格式url:"/locust-test/print-log"
on_start
: 包里自带方法,在脚本启动时执行。locust -f *.py(脚本的名字)
@Slf4j
@RestController()
@RequestMapping("/locust-test")
public class LocustTestController {
@PostMapping("/print-log")
public void locustTest(){
log.info("locustTest...."); // 接口访问后,打印一条日志。
}
}
start swarming
即可进入监控界面30
个并发,请求量每秒达到10447
其他的监控数据
压测数据下载
以上就是利用Python
中Locust
的包实现了接口的压力测试。搭建非常的方便,并发数量方便可控制、各项数据展示非常清晰。如果有时间,可以本地搭建,测试本机能承受的最高压力喔。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。