gradio/scripts/load_test/simple.py
aliabid94 61cb4fd711
Benchmarking scripts for load tests (#7670)
* changes

* changes

* changes

* changes

* changes

* changes

---------

Co-authored-by: Ali Abid <aliabid94@gmail.com>
Co-authored-by: Ubuntu <ubuntu@ip-172-31-17-237.us-west-2.compute.internal>
2024-03-25 12:30:57 -07:00

28 lines
752 B
Python

from fastapi import FastAPI, WebSocket
from fastapi.responses import StreamingResponse
import asyncio
app = FastAPI()
async def number_generator():
for number in range(1, 501):
message = "Lorem "*(number + 1)
yield f"data: {message}\n\n"
await asyncio.sleep(0.01)
@app.get("/sse")
async def sse():
return StreamingResponse(number_generator(), media_type="text/event-stream")
@app.websocket("/ws")
async def websocket_endpoint(websocket: WebSocket):
await websocket.accept()
for number in range(1, 501):
message = "Lorem "*(number + 1)
await websocket.send_text(message)
await asyncio.sleep(0.01)
await websocket.close()
import uvicorn
uvicorn.run(app, host="0.0.0.0", port=7860)