pyropy / fastapi-socketio

Easily integrate socket.io with your FastAPI app 🚀
Apache License 2.0
328 stars 31 forks source link

feature request : allow to provide a client_manager #10

Open thomasleveil opened 3 years ago

thomasleveil commented 3 years ago

So that we can use Redis or RabbitMQ to make socket.io work in a multi process context.

See https://python-socketio.readthedocs.io/en/latest/server.html?highlight=redis#using-a-message-queue

pyropy commented 3 years ago

Hey @thomasleveil 👋

Thank you for the feature request 🙏

I have seen previously that there is possibility of using Redis, RabbitMQ and other services with SocketIO but haven't dig any deeper into the use-cases and implementation.

I will read some docs and take a look on how could we implement this 🚀

lefnire commented 3 years ago

Also interested in this. I'm not sure how it can be tied to app, since using a Manager replaces that argument socketio.AsyncServer(client_manager=socketio.AsyncRedisManager('redis://')) - so it seems mutually exclusive? But yeah, this feature would be a boon for scaling apps (multiple servers), as well as some features which appear only available on the JQ Managers, like sio.get_participants() to see a list of users in the room.

y-mironov commented 3 years ago

Hello. Any progress ?

kalmastenitin commented 2 years ago

Any Ideas @pyropy ??

pyropy commented 2 years ago

Hey sorry folks, I really have a lot of going on my plate so I don't really have time to get feature requests going. I would appreciate any contributions from your side as that would help me greatly in maintaining this library.