0

我的目标是创建一个可用于管理各种客户端的发布/订阅的应用程序。应用程序应该能够通过 API 接收新主题,然后通过 websocket 连接接受订阅者。

我有它的工作,但我知道当前的解决方案有很多缺陷。它目前的工作方式如下:

我有一个 chicago_boss 应用程序,它有一个 websocket 端点供客户端连接,一旦客户端连接,我将该 Websocket 连接的 Pid 添加到 Redis 中的列表中。

  1. 客户端连接到“ws://localhost:8001/websocket/game_notifications”
  2. 该 Websocket 连接的 Pid 使用 LPUSH game_notifications_pids "<0.201.0>" 添加到 Redis。3.redis中game_notifications的最后10条消息发送到websocket Pid
  3. 一条新消息发布到“/game_notifications/create”
  4. 使用 LPUSH game_notifications "new message" 将消息添加到 redis
  5. Redis 中所有具有 key game_notifications_pids 的 Pid 都会发送这条新消息
  6. 在关闭 websocket 时,Pid 将从 Redis 列表中删除

请让我知道人们在这个设置中看到了什么问题?谢谢!

4

0 回答 0