我的目标是创建一个可用于管理各种客户的pub / sub的应用程序。应用程序应该能够通过API接收新主题,然后通过websocket连接接受订阅者。
我有它的工作,但我知道目前的解决方案有很多缺陷。目前的工作原理如下:
我有一个chicago_boss应用程序,它有一个websocket端点供客户端连接,一旦客户端连接,我将该Websocket连接的Pid添加到Redis中的列表。
- 客户端连接到" ws:// localhost:8001 / websocket / game_notifications"
- 使用LPUSH game_notifications_pids"< 0.201.0>"将该Websocket连接的Pid添加到Redis。
3. Redis中用于game_notifications的最后10条消息被发送到websocket Pid
- 新消息将发布到" / game_notifications / create"
- 使用LPUSH game_notifications"新消息"
将消息添加到redis
- 带有关键game_notifications_pids的Redis中的所有Pids都会发送此新消息
- 关闭websocket时,Pid将从Redis列表中删除
醇>
请让我知道人们在此设置中遇到的问题?谢谢!