Rails 3.2 电子邮件在被 Sendgrid 处理之前延迟了 11 分钟

Posted

技术标签:

【中文标题】Rails 3.2 电子邮件在被 Sendgrid 处理之前延迟了 11 分钟【英文标题】:Rails 3.2 Emails being delayed for 11 mins before processed by Sendgrid 【发布时间】:2015-01-21 15:24:45 【问题描述】:

我有一个在 Heroku 上运行的 Rails 3.2 应用程序,使用 Action Mailer 和 Sendgrid 发送单个事务性电子邮件。目前,当应用程序发送电子邮件时,Sendgrid 没有收到发送 11 分钟的请求。在收件箱中查看收到的电子邮件时,时间会读取收到的时间,但如果您打开电子邮件,它会显示最初生成电子邮件请求的时间(提前 11 分钟)。这就是我在 production.rb 中所拥有的:

ActionMailer::Base.smtp_settings = 
:address        => 'smtp.sendgrid.net',
:port           => '587',
:authentication => :plain,
:user_name      => ENV['SENDGRID_USERNAME'],
:password       => ENV['SENDGRID_PASSWORD'],
:domain         => 'heroku.com',
:enable_starttls_auto => true



config.action_mailer.delivery_method = :smtp
config.action_mailer.perform_deliveries = true
config.action_mailer.raise_delivery_errors = true

我从未在 Rails 4.0 应用程序中遇到过这个问题,那么这是 Rails 3.2 的已知问题吗?

【问题讨论】:

我在本周使用 SendGrid 时看到了类似的 11 分钟延迟。电子邮件从 Azure 上的 .Net 发送。 我在 SendGrid 工作。审查过程可以加快。支持团队可以提供帮助。给他们打电话、聊天或发电子邮件。 support.sendgrid.com/hc/en-us/articles/203979566 【参考方案1】:

我也遇到过。

在与他们的支持人员交谈后,故意延迟,将其放入新帐户的系统中。

他们的系统需要“了解”您不是垃圾邮件发送者,然后才能消除延迟。

他们说它应该只延迟“一小段时间”,除了发送合法的电子邮件并等待之外,没有其他方法可以删除它。

【讨论】:

您知道帐户创建后延迟会持续多久吗? 不确定,抱歉。我设置了帐户,发现为我交付所需的时间太长,所以我离开了它,因为他们无法为我做任何事情。然后我在 1 个月后再次查看它,它工作正常,没有延迟,所以我会说最多 1 个月。 我与 SendGrid 支持人员聊天,他们向我发送了一封电子邮件,询问更多信息,以便他们消除电子邮件延迟。所以有办法解决它。 也许他们现在已经改变了他们的程序。当我问他们时,他们说这是不可能的,你必须等待系统信任你,因为软件不允许这样做。听起来现在可能会更好,如果他们会为您手动完成。 我认为这种延迟存在于所有免费帐户中(以优先考虑付费帐户/更快地发送)【参考方案2】:

来自 SendGrid 文档的一些答案:https://sendgrid.com/docs/Clas-s-room/Send/When_Emails_Are_Sent/seeing_a_delay_with_your_first_few_sends.html

请查看上面的 shaunwhite,了解如何获得支持以加快流程。

【讨论】:

以上是关于Rails 3.2 电子邮件在被 Sendgrid 处理之前延迟了 11 分钟的主要内容,如果未能解决你的问题,请参考以下文章

向大量收件人发送电子邮件的最佳实践 (Rails + SendGrid)

Ruby on Rails 中的 Sendgrid / 电子邮件发送问题(托管在 Heroku 上)

Rails 4:EOFError:仅在开发中的任何电子邮件后到达文件结尾

“Postmark::InvalidMessageError:提供电子邮件 TextBody 或 HtmlBody 或两者。”对于 rails 3.2 应用程序

Rails 3.2 `link_to`(在电子邮件中)与`method: :put`仍在产生GET请求

带有ajax的rails 3.2