一键通 - 如何管理 socket.io 中的按钮

Push to talk - How to manage push button in socket.io

我有两台托管 socket.io 的服务器,两个应用程序之间的通信由 Redis 管理。

当用户 1 在 redis 的服务器端单击按钮时,我将条目设为

Room:A -> User1

当用户 2 单击按钮时,他收到房间忙消息,因为在 Redis 中已经有用户 1 的条目

当用户 2 按下按钮时,我将从 redis 中删除条目,这样其他用户就会轮到发言。

但是当有 100 个用户正在执行操作时,它不是实时工作的问题。

关于如何在 socket.io 中管理按钮的任何想法?

我找到了用锁定管理按钮的方法。

同样使用以下 Redis 库:

https://github.com/mike-marcacci/node-redlock