我正在实施一个应用程序,用于检查数据插入数据库后的时间是 4或6或12 小时。
例如:
数据插入下午1点,然后它已经是下午5点(所以这是插入数据后4小时),我的应用程序将处理另一项任务(不需要对此进行解释,我得到了它的封面: D)
这是我的数据库字段的图片:
id | name | time_added | time_to_check
ID当然是INT()类型
name是Varchar()
time_added是一个INT()类型因为我使用PHP的time()
函数来插入一个值。
time_to_check是INT类型,因为这是我将插入 4,6或12 的字段
所以我的问题是如何实现这一个?建立一个Cron Job是一个好主意来执行这项任务吗?
如果是的话,我应该每次运行Cron工作(每15分钟,1月1日,每天一次)?我知道在完成这项任务时需要考虑很多。所以我需要你的想法
如果你有一个想法,请分享给我,甚至编码你想如何实现这个,这将是一个很大的帮助!
非常感谢你! :)
附加信息:
我每分钟运行它的担心是并非所有数据都同时插入。例如:
Data1在下午3:15添加,检查时间为4小时
Data2在下午3:20添加,检查时间为4小时。
如果cron工作在下午3:15或下午3:20没有执行,我该怎么办?
答案 0 :(得分:1)
如果您需要在插入后的4,6或12小时内定期处理数据,您还可以查看Linux(而非PHP!)'at'命令,该命令允许您将进程排队以在特定时间执行。如果您期望大量插入,那么cron仍然是更好的选择。
答案 1 :(得分:0)
Cron可能是你最好的选择,让它检查数据库中的记录以检查并通过它们。
至于你想要它的频率,主要取决于你需要多长时间准确。例如,在我的游戏中,我每分钟都有一个cron来检查到达目的地的车队,但是每隔一小时检查一下被禁止的用户是否已经服刑并需要取消禁止。
答案 2 :(得分:0)
是的,cron工作对这项任务有好处。您需要在想要检查它的LCM中运行它。所以我可以看到你应该在2小时后运行它。 (但由于四舍五入,会出现轻微的误差)。如果您需要完全准确,您应该每分钟检查一次
答案 3 :(得分:0)
我建议用cronjob来完成这项任务。这里使用了一些用法和一些例子:http://en.wikipedia.org/wiki/Cron
时间范围取决于您的需求。如果你检查4,6或12小时,每小时的cronjob似乎没问题。