【问题标题】:Heroku: delayed job sending email multiple timesHeroku:多次发送电子邮件的延迟作业
【发布时间】:2012-03-18 18:49:23
【问题描述】:

我们在 Heroku 中部署了一个应用程序(Rails 3)。 为了向近 500 位用户发送电子邮件摘要,我们使用了延迟作业。

Notifier.delay.send_email_digest(digest_content, @user)

我的应用程序有 3 个 web dynos 和 2 个 worker dynos。 虽然任务是在本地为每个用户仅发送一个电子邮件摘要, 在heroku(生产)中,它为一些用户发送了两封电子邮件摘要(奇怪)。

这是由于两个工人测功机(但为什么?或仅仅是巧合)。 谁能帮我解决这个问题?

谢谢。

【问题讨论】:

  • 只有一个工人的时候你有问题吗?
  • @Neil Middleton 我们需要两个工人测功机来做一些其他的后台工作。那么,你能帮我找出问题所在吗?
  • 我的猜测是每个工人都在接手一份工作,然后他们随后又工作了两次。
  • 你使用的是什么 gem 版本的delayed_job?我什至无法让它发送延迟的电子邮件。
  • @asitmoharna 你明白了吗?我有同样的问题

标签: ruby-on-rails-3 heroku delayed-job


【解决方案1】:

在您的 send_email_digest 方法中,您是否正在调用传递?延迟作业在发送电子邮件时使用了一些魔法,它会自动为您调用传递。如果您自己致电交付,它将发送多次。我偶尔会遇到这种情况。

【讨论】:

猜你喜欢
  • 2012-10-11
  • 1970-01-01
  • 1970-01-01
  • 2015-09-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多