如何防止工作每小时发送一次以上的邮件?

时间:2019-02-01 22:34:25

标签: ruby-on-rails heroku

我在Heroku上托管了一个Rails应用程序。 Heroku Scheduler每小时都会搜索未来23到24小时之间发生的事件,并向参与者发送提醒电子邮件。这通常可以正常运行,但是最近,一个小时内发送了7次事件提醒。我的猜测是因为服务器在该小时内被重置了几次。防止这种情况将来发生的最佳方法是什么?我正在考虑制作一个数据库表来跟踪上次提醒作业的运行时间,以避免作业每小时运行一次以上。这是一个好方法吗?

1 个答案:

答案 0 :(得分:0)

如果只有一个提醒,您可以在数据库中的同一表上存储一个简单的布尔值,该表存储事件,例如hashadreminder。

编辑:

重读几次问题

如果你想这样做的参与者基础上,然后采用不同的表参加者ID和布尔将工作最好以确保即使不是每个人都得到了电子邮件在第一次运行,然后他们在随后的。