定时事件与PHP / MySQL的(Timed events with php/MySQL)

2019-09-22 04:41发布

我需要一种方法一定的时间量过去之后在表中修改的值。 我目前的方法如下:

  • 插入结束时间在表等待期
  • 当用户请求加载的值要更改的页面,请检查电流> =结束时间
  • 如果是,将值更改和删除结束时间字段,如果实在不行,什么都不做

这将是该网站上的一大特色,所以效率是关键; 考虑到这一点,你也许可以看到我是如何做的问题。 同样的代码块将被称为每次有人访问所需要的信息的页面。

为改进或更好的方法的任何建议,将不胜感激,优选在PHP或Perl。

为了应对cron作业答案:谢谢,我想如果可能的话做这样的事情,但主机的限制是问题。 由于这是应用程序的重要组成部分,它不能是有限的。

Answer 1:

为什么不使用cron来更新幕后这一信息? 这样,你卸载的每一页命中检查,实际上可以安排时间,以满足您的应用需求。



Answer 2:

您的解决方案听起来很合乎逻辑的,因为你没有访问cron的。 另一种方法可以在一个文件中存储的值,并在下一次页面加载检查时,它的最后修改(filemtime(“checkfile.txt”)),并决定是否需要重新修改。 您应该测试两种方法的性能。



Answer 3:

您可以使用cron作业来检查每个字段在数据库中定期和更新呀?

这方面的一个重要组成部分是如何经常需要更新。 很多共享主机的限制的cron检查的频率,例如不高于每15分钟,这可能会影响应用程序更多。



Answer 4:

你可以使用某种类型的触发器在每个页面加载。 我真的不知道怎么会影响性能,但也许别人可以提供一些线索。



Answer 5:

如果性能真正开始成为一个问题,(这意味着很多比你更可能实现),你可以使用memchached来存储信息...



文章来源: Timed events with php/MySQL