我在Node / Express中构建一个Web应用程序,以便用户可以设置一个计时器,以便执行或重复某个任务。我的问题是如何在截止日期之后触发事件为许多用户设置计时器。我不希望在客户端处理此问题,因为用户可以关闭浏览器。一个很好的例子是pingdom.com等服务,它允许您设置计时器并每隔X分钟向您的服务器发送一次ping。如何实现这一目标? 我希望我不会因为这个问题而得到很多否定,而且我也没有要求你们给我写代码。我只是想知道解决这个问题的强大策略。 这是我的想法:
将结束时间保存在db中并每秒使用一次cron作业检查以查看时间是否已启动(由于查询和所有计算可能需要1秒以上,因此我认为这不是很好)
以某种方式将变量分配给setInterval并将它们存储在全局列表中
答案 0 :(得分:0)
如果每个客户端都拥有自己的计时器,那么您的网络应用将具有更具响应性的用户界面,并且您的后端可以更好地扩展。关闭浏览器不会有问题。
endtime
保留在服务器的数据库中以查找特定问题。endtime
,并使用JavaScript创建一个计时器,提醒用户他们的时间已过期。endtime
之后提交的话,请进行额外的检查以拒绝答案,以防止客户作弊。