1

您好,我想根据日历制作一个定期活动。我想问的是:如何触发事件?如果客户端没有登录或打开 webapp 以触发构造函数中的事件,我该如何让代码运行。

我知道 cron 作业可能是解决方案,但还有其他解决方案吗?(我想避免 cron 作业)。

4

2 回答 2

3

您必须运行某些东西才能使其正常工作;一个 cron 是理想的,因为它可以定期运行脚本来检查诸如事件之类的事情。

没有它,您会被用户操作触发,但就像您说的那样,该用户可能并不总是登录来触发它。

您可以修改代码以对所有用户进行任何用户触发操作。它有点复杂,因为您需要允许多个用户同时登录,而您只希望其中一个用户触发东西。我会在您的数据库中设置一个表来跟踪上次触发事件的时间,然后如果从那时起和现在的差距在用户登录时足够大,请在表中添加一个新条目以及现在的时间防止其他用户触发此操作,并触发您需要运行的位。

就像我说的那样,这不是一个完美的解决方案,我真的会推荐使用 cron。有什么理由要避免使用 cron 吗?

于 2013-01-09T11:19:33.087 回答
0

如果应触发该作业以使服务器保持良好状态,则应使用 cron 作业运行它,如果您在用户登录之前不这样做,它可以是工作负载安全的。您也可以手动登录以触发事件,也许是管理页面。

于 2013-01-09T11:17:09.803 回答