41 lines
1.1 KiB
Python
41 lines
1.1 KiB
Python
from fastapi import APIRouter, Depends, HTTPException
|
|
from core.database import fake_users_db
|
|
import time
|
|
|
|
router = APIRouter()
|
|
|
|
@router.post("/api/test")
|
|
async def test_high_frequency(
|
|
request_count: int = 100,
|
|
delay_ms: float = 0.0
|
|
):
|
|
"""Test endpoint for high-frequency requests"""
|
|
start_time = time.time()
|
|
|
|
results = []
|
|
for i in range(request_count):
|
|
if delay_ms > 0:
|
|
await time.sleep(delay_ms / 1000)
|
|
|
|
results.append({
|
|
"request_number": i + 1,
|
|
"timestamp": time.time()
|
|
})
|
|
|
|
end_time = time.time()
|
|
total_time = end_time - start_time
|
|
|
|
return {
|
|
"message": "High-frequency test completed",
|
|
"data": {
|
|
"total_requests": request_count,
|
|
"total_time_seconds": total_time,
|
|
"average_rps": request_count / total_time if total_time > 0 else 0,
|
|
"configured_delay_ms": delay_ms
|
|
},
|
|
"metadata": {
|
|
"start_time": start_time,
|
|
"end_time": end_time,
|
|
"results": results
|
|
}
|
|
} |