Ich entwickle einen Fastapi WebSocket -Server, der mit Ray Serve bereitgestellt wird, um mehrere WebSocket -Verbindungen zu bearbeiten. Die Anwendung ist so konzipiert, dass sie eine Echtzeit-Kommunikation mit bis zu 50.000 gleichzeitigen Benutzern ermöglicht. Nach der Integration von Ray, der für die Multiprozessierung integriert wurde, stoße ich jedoch auf ein Problem: < /p>
Die Anwendung funktioniert wie erwartet für die ersten 5 Benutzer. Der folgende Fehler: < /p>
Ich entwickle einen Fastapi WebSocket -Server, der mit Ray Serve bereitgestellt wird, um mehrere WebSocket -Verbindungen zu bearbeiten. Die Anwendung ist so konzipiert, dass sie eine Echtzeit-Kommunikation mit bis zu 50.000 gleichzeitigen Benutzern ermöglicht. Nach der Integration von Ray, der für die Multiprozessierung integriert wurde, stoße ich jedoch auf ein Problem: < /p> Die Anwendung funktioniert wie erwartet für die ersten 5 Benutzer. Der folgende Fehler: < /p> [code]ERROR: ASGI callable returned without sending handshake. (ProxyActor pid=1264842) Task exception was never retrieved (ProxyActor pid=1264842) future: (ProxyActor pid=1264842) Traceback (most recent call last): (ProxyActor pid=1264842) File "/home/user/lib/python3.11/site-packages/ray/serve/_private/proxy_response_generator.py", line 116, in _await_response_anext (ProxyActor pid=1264842) return await self._response.__anext__() (ProxyActor pid=1264842) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ (ProxyActor pid=1264842) File "/home/user/lib/python3.11/site-packages/ray/serve/handle.py", line 559, in __anext__ (ProxyActor pid=1264842) replica_result = await self._fetch_future_result_async() (ProxyActor pid=1264842) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ (ProxyActor pid=1264842) File "/home/user/lib/python3.11/site-packages/ray/serve/handle.py", line 280, in _fetch_future_result_async (ProxyActor pid=1264842) raise RequestCancelledError(self.request_id) from None (ProxyActor pid=1264842) ray.serve.exceptions.RequestCancelledError: Request e85273c8-f582-49a4-8dbe-0a86b464ad90 was cancelled. (ProxyActor pid=1264842) Task exception was never retrieved (ProxyActor pid=1264842) future: (ProxyActor pid=1264842) Traceback (most recent call last): (ProxyActor pid=1264842) File "/home/user/lib/python3.11/site-packages/uvicorn/protocols/websockets/websockets_impl.py", line 258, in run_asgi (ProxyActor pid=1264842) self.send_500_response() (ProxyActor pid=1264842) File "/home/user/lib/python3.11/site-packages/uvicorn/protocols/websockets/websockets_impl.py", line 222, in send_500_response (ProxyActor pid=1264842) self.transport.write(b"".join(content)) (ProxyActor pid=1264842) File "uvloop/handles/stream.pyx", line 678, in uvloop.loop.UVStream.write (ProxyActor pid=1264842) File "uvloop/handles/handle.pyx", line 159, in uvloop.loop.UVHandle._ensure_alive (ProxyActor pid=1264842) RuntimeError: unable to perform operation on ; the handler is closed < /code> Code: Hauptanwendung mit Ray Serve -Bereitstellung: < /p> from fastapi import FastAPI, WebSocket from ray import serve
app = FastAPI()
@serve.deployment @serve.ingress(app) class FastAPIDeployment: def __init__(self): self.connections = {}
@app.websocket("/ws") async def websocket_endpoint(self, websocket: WebSocket): await websocket.accept() # Connection handling logic < /code> WebSocket-Manager: Ein redisbasiertes WebSocket-Manager für die Verfolgung von Verbindungen. Servieren oder Fastapi, dass ich fehlt? Status? < /p> Was ich ausprobiert habe: < /p> Verifizierte Redis -Verbindung und aktive WebSocket -Verwaltungslogik. Erhöhte http_options [/code] in serv.start () : [code]serve.start(http_options={ "host": "0.0.0.0", "port": 8000, "keep_alive_timeout": 60, "max_keep_alive_requests": 10 }) [/code]
Ich entwickle einen FastAPI-WebSocket-Server, der mit Ray Serve bereitgestellt wird, um mehrere WebSocket-Verbindungen zu verwalten. Die Anwendung ist so konzipiert, dass sie eine...
Ich entwickle einen FastAPI-WebSocket-Server, der mit Ray Serve bereitgestellt wird, um mehrere WebSocket-Verbindungen zu verwalten. Die Anwendung ist so konzipiert, dass sie eine...
Ich verwende einen PHP -Web -Socket auf meiner Serverseite. Ich teste derzeit nur die Verbindung zwischen dem Client und dem Server, daher habe ich die Socket noch nicht konfiguriert, um auf...
Ich verwende einen PHP -Web -Socket auf meiner Serverseite. Ich teste derzeit nur die Verbindung zwischen dem Client und dem Server, daher habe ich die Socket noch nicht konfiguriert, um auf...
Ich habe eine Laravel 5.2 -App (Mylaravel) in Ubuntu 14.04 mit XAMPP für Linux 5.6.15 erstellt. sichtbar unter http: // localhost: 8000 . Ich kann mich anmelden/loggen usw.
ohne den Artisan serve...