的Rails 3梅勒变量Errno :: ECONNRESET的GMail
问题描述:
我RANDOMLY得到的错误:的Rails 3梅勒变量Errno :: ECONNRESET的GMail
Errno::ECONNRESET (Connection reset by peer):
当试图发送电子邮件:
UserMailer.activation(@user).deliver
在初始化我设置SMTP设置使用我的Google Apps帐户:
ActionMailer::Base.smtp_settings = {
:address => "smtp.gmail.com",
:port => 587,
:domain => "mydomain.com",
:user_name => "[email protected]",
:password => "tylerspw",
:authentication => "plain",
:enable_starttls_auto => true
}
有时可以正常工作,其他时候会抛出此错误。有任何想法吗?
答
这可能是一些简单的事情,例如超时或服务器负载过多。我建议抢救异常并重试,然后在一定次数的重试后记录错误并失败(或通知某人)。沿着这些线
tries = 0
begin
UserMailer.activation(@user).deliver
rescue Errono::ECONNRESET => e
if (tries += 1) > 2
retry
else
# log error
end
end
不是一个坏主意。 – tybro0103