根据用户定义的时间运行特殊任务

时间:2018-11-25 08:51:10

标签: php mysql linux

我很惊讶我无法在这里找到任何东西-因此,如果我完全错过了它,请将我定向到正确的线程。

在深入研究任何代码之前,我正在尝试收集一些处理这种情况的好主意。

我们正在开发一个网站,其中包含用户可以选择的任务列表,供服务器代表他们执行。自动化的电子邮件,短信,日历提醒等。

我首先走了关于使用cron的思路,但是由于每个用户的时间和任务可能每天都在变化-为了切实可行,我认为直接为每个任务涉及cron可能变得杂乱无章。

我的下一个想法是每天晚上在午夜运行cron脚本并为第二天生成任务列表-但是我仍然需要cron或某种类似于cron的计时守护程序来对照时间检查列表每分钟。

我已经经历了几个想法,但是它们似乎都很活跃或占用大量处理器。我想找到一个好的轻量级解决方案,每天可以处理多达数千个用户定义的任务。

我正在使用您的基本LAMP7堆栈。如果有人已经完成了类似的任务,我只是在寻找一些可以考虑的好主意。

谢谢。

1 个答案:

答案 0 :(得分:1)

您可以使用ReactPHP应用程序在计算机的后台运行。

然后,您可以在ReactPHP应用程序上创建一个简单的http server,以接收来自Web服务器的用户数据,例如您指定的LAMP7。并且一旦您知道可以通过在event-loop上设置异步计时器来触发这些事件。