1

我正在开发一个 Web 应用程序,该应用程序在发生特定事件时向用户发送文本消息。基本条件如下所示:

  1. 该事件不止一次发生,但不是以合理可预测的频率发生。
  2. 我可以随时预测该事件是否会在未来 10 天内发生
  3. 如果事件发生在该时间段内,我可以预测事件将在 1 秒内发生的时间。

我想在事件发生之前(约 5 分钟)向用户发送短信。

在未来某个时间“安排”方法调用(发送文本)的最佳方式是什么?

4

3 回答 3

1

这取决于环境。乍一看,我认为cron是您正在寻找的;在您的服务器上创建一个每分钟调用一个脚本的 crontab 条目,然后该脚本应该查找某个标志(在文件中、数据库中、您认为合适的任何地方)以查看是否有要发送的内容。

基本上,您需要一个队列(用于多个用户)和一个定时 php 脚本。

https://en.wikipedia.org/wiki/Cron

于 2013-08-06T23:41:25.217 回答
0

在 JAVA 中,我会推荐QUARTZ。IS 易于配置,并且支持持久性。

于 2013-08-07T09:05:51.043 回答
0

使用每分钟运行一次的 cronjob 并在 6 分钟内查找未通知的任何事件

或使用类似的命令

future_pattern = "%M %H %d %m ? %Y"
command = 'python do_something.py'
evt_tim = datetime.datetime(2013,8,22,14,22) # aug 22,2013 @ 2:22pm
notify_time = evt_time - datetime.timedelta(minutes=5)
subprocess.call("%s  %s"%(notify_time.strftime(future_pattern),command)

或使用为此提供的服务,例如 twillio http://blog.iron.io/2012/10/how-to-schedule-sms-and-calls-on-twilio.html

于 2013-08-06T23:50:47.320 回答