Laravel (+ Vue.js) 广播 - 如何设置倒计时然后发送广播消息?

Laravel (+ Vue.js) Broadcast - How to set up a countdown and then send a broadcast message?

我想用Laravel的直播系统制作多人竞猜(我用的是Vue.js这样页面就不需要刷新了)。为此,我需要设置一个系统来在倒计时结束时停止提问(服务器将向玩家发送广播消息)。但是我不知道如何正确地做到这一点并获得最佳表现。 我想使用排队的作业:当一个问题开始时,一个作业被创建并排队,延迟 20 秒。执行作业时(20 秒后),将向玩家发送一条广播消息,指示问题已过期。

这是最好的方法还是有其他更好的方法?

提前感谢您的回答

队列可能不是最好的,因为当队列填满时您可能会发送延迟的响应。您最好在客户端(在 Vue 中)跟踪时间,并在服务器上验证响应。

题目开始时,存储开始时间。 运行 客户端倒计时,计时结束时显示通知。向服务器发送请求时,检查 20s 是否已过期。

您可以使用 Websockets 来帮助保持所有玩家同步。