用python开发一个性能压测框架(超级简单)

用python开发一个性能压测框架(超级简单)

该框架是一个基础框架,超级简单,已经跑通,可以进行优化扩展

由于工作需要,最近开发了一款python性能压测框架,主要是对后端接口进行多线程压测

主要使用 Python 的 requests 库来发送请求,并使用 threading 或 asyncio 来模拟并发请求

代码如下:

python 复制代码
import requests
import threading
import time

class PerformanceTester:
    def __init__(self, url, num_threads=1, num_requests=10):
        self.url = url
        self.num_threads = num_threads
        self.num_requests = num_requests
        self.results = []

    def _send_request(self):
        start_time = time.time()
        response = requests.get(self.url)
        end_time = time.time()
        elapsed_time = end_time - start_time
        self.results.append(elapsed_time)

    def run_test(self):
        threads = []
        for _ in range(self.num_threads):
            for _ in range(self.num_requests):
                thread = threading.Thread(target=self._send_request)
                thread.start()
                threads.append(thread)

        for thread in threads:
            thread.join()

        avg_response_time = sum(self.results) / len(self.results)
        max_response_time = max(self.results)
        min_response_time = min(self.results)

        print(f"Avg Response Time: {avg_response_time}")
        print(f"Max Response Time: {max_response_time}")
        print(f"Min Response Time: {min_response_time}")

if __name__ == "__main__":
    tester = PerformanceTester("https://example.com/api", num_threads=5, num_requests=20)
    tester.run_test()
相关推荐
叹一曲当时只道是寻常14 小时前
Python 飞书开放平台自动化配置工具 feishu-auto 使用教程
python·自动化·飞书
UTP协同自动化测试14 小时前
智能家居中控屏测试:触摸屏操作 + I2C 读取传感器 + UART 与子设备通信 + GPIO 控制
功能测试·单片机·嵌入式硬件·测试工具·智能家居
MicrosoftReactor14 小时前
技术速递|在 Copilot 应用科学中的智能体驱动开发
ai·自动化·copilot
jinglong.zha15 小时前
AScript + Cursor:让 AI 直接操控你的设备,一句话完成自动化编程(源代码)
运维·人工智能·自动化·ascript·openclaw
阿坤带你走近大数据15 小时前
存储过程在 oracle数据库管理工具里定时自动化运行方案
数据库·oracle·自动化
网硕互联的小客服15 小时前
CentOS 7 系统开通后如何修改数据盘挂载目录?
运维·服务器·网络·安全·自动化
牛奶咖啡1315 小时前
DevOps自动化运维实践_ansible-playbook的使用
运维·自动化·ansible·devops·playbook·playbook模块及其示例
我科绝伦(Huanhuan Zhou)1 天前
分享一个服务故障自愈系统
运维·人工智能·自动化
ZC跨境爬虫1 天前
极验滑动验证码自动化实战:背景提取、缺口定位与Playwright滑动模拟
前端·爬虫·python·自动化
Agent产品评测局1 天前
企业发票管理自动化落地,验真归档全流程实现方法:2026企业级智能体选型与实测指南
运维·网络·人工智能·ai·chatgpt·自动化