用python写一段压力测试代码
时间: 2024-10-03 12:00:44 浏览: 21
在Python中,我们可以使用requests库来进行压力测试,模拟大量并发请求对网站服务器的压力。以下是一个简单的例子,展示如何编写一个基本的压力测试脚本:
```python
import requests
from concurrent.futures import ThreadPoolExecutor
# 目标URL
url = "http://example.com/api"
# 压力测试次数(可以根据需要调整)
num_requests = 100
def make_request():
try:
response = requests.get(url)
response.raise_for_status() # 如果HTTP状态码不是2XX,抛出异常
except Exception as e:
print(f"Error making request: {e}")
else:
print(f"Request made successfully. Response status: {response.status_code}")
with ThreadPoolExecutor(max_workers=5) as executor: # 创建一个最多同时处理5个请求的工作线程池
futures = {executor.submit(make_request) for _ in range(num_requests)}
# 等待所有任务完成
for future in futures:
future.result()
```
这个脚本会创建一个工作线程池,同时发起多个GET请求到指定URL。注意,实际使用时可能会需要设置适当的延时(使用`time.sleep()`),以及检查服务器的负载能力,避免造成过度负担。
阅读全文