在一定时间(30秒)后检查mysql数据库中的值后运行函数

时间:2019-01-07 12:01:11

标签: php mysql codeigniter-3

我已经建立了按需卡车预订门户。功能是:

  1. 客户根据自己的选择预定车辆。
  2. 输入后 预订的正确详细信息已插入数据库中。
  3. 根据 客户取货地点通过驱动程序发送给驾驶员的通知 在3公里半径内的android应用程序上运行firebase。

我的问题

我想向半径3公里的驾驶员发送通知,并等待30秒以使驾驶员接受预订。如果3公里之内的驾驶员在30秒后都没有接受预订,那么我想再次向3公里和5公里之内的驾驶员发送通知,并检查30秒后驾驶员是否接受预订。如果没有一个司机接受预订,那么我会向客户发送短信,告知您的预订不被接受。

我应该使用什么来提供上述功能?我在互联网上搜索,并且发现了有关CRON JOB ...的信息,该信息基于一天中的特定时间。 但是我想在每次预订都插入数据库并检查之后执行一个功能。

1 个答案:

答案 0 :(得分:1)

这种情况非常适合消息队列。每当触发事件时,您都将延迟30秒的消息放入队列中,收听消息并采取相应的措施。

签出https://github.com/marsanla/Codeigniter-jobQueue以获得CodeIgniter队列实现。