SMTP:延迟发送的电子邮件(约 8 小时)
SMTP: Emails sent with delay (~8 hours)
我的印象(仍在调查中)我的网络应用程序自动发送的电子邮件 高度延迟(大概晚了 8 小时)。
- 这可能是我的 SMTP 服务器超载了吗?
- 这可能与垃圾邮件过滤有关吗?
- 这就是 Mandrill 等应用退出的原因吗?
我一直在那些方向寻找,没有成功。
我使用 1&1 作为域名提供商。
他们可能 运行 在只偶尔发送它们的 cronjob 上?
或者它们可能是使用后台作业的任务队列(如 Resque)发送的,并且队列只是真正备份?
有可能在您的应用程序生成这些消息与您的 SMTP 服务器实际发送它们之间引入延迟,正如您在问题中提到的那样。
也有可能是接收方 MX 认为您的发送 SMTP 服务器可能是垃圾邮件发送者而推迟接受邮件。这被称为 'greylisting'。在这种情况下,您的 SMTP 服务器必须在邮件最终被接收方 MX 接受之前进行多次重试,这就是造成延迟的原因。将 MX 发送到 IP 信誉有问题或 DNS 配置不当的 SMTP 服务器列入灰名单的情况并不少见。
您是否可以检查发送这些邮件的 SMTP 服务器上的日志?如果是这样,日志会为您显示每次投递尝试的时间戳,并且从时间戳中可以清楚地知道发生了上述哪些情况。
此外,查看其中一条延迟消息的 headers(在最终收到消息后)可能会阐明延迟的位置。从下往上阅读,您应该看到一个显示消息生成时间的时间戳,然后是消息到达中继它的每个服务器的时间戳。从这些时间戳中,您应该能够看到延迟的位置。
我的印象(仍在调查中)我的网络应用程序自动发送的电子邮件 高度延迟(大概晚了 8 小时)。
- 这可能是我的 SMTP 服务器超载了吗?
- 这可能与垃圾邮件过滤有关吗?
- 这就是 Mandrill 等应用退出的原因吗?
我一直在那些方向寻找,没有成功。
我使用 1&1 作为域名提供商。
他们可能 运行 在只偶尔发送它们的 cronjob 上?
或者它们可能是使用后台作业的任务队列(如 Resque)发送的,并且队列只是真正备份?
有可能在您的应用程序生成这些消息与您的 SMTP 服务器实际发送它们之间引入延迟,正如您在问题中提到的那样。
也有可能是接收方 MX 认为您的发送 SMTP 服务器可能是垃圾邮件发送者而推迟接受邮件。这被称为 'greylisting'。在这种情况下,您的 SMTP 服务器必须在邮件最终被接收方 MX 接受之前进行多次重试,这就是造成延迟的原因。将 MX 发送到 IP 信誉有问题或 DNS 配置不当的 SMTP 服务器列入灰名单的情况并不少见。
您是否可以检查发送这些邮件的 SMTP 服务器上的日志?如果是这样,日志会为您显示每次投递尝试的时间戳,并且从时间戳中可以清楚地知道发生了上述哪些情况。
此外,查看其中一条延迟消息的 headers(在最终收到消息后)可能会阐明延迟的位置。从下往上阅读,您应该看到一个显示消息生成时间的时间戳,然后是消息到达中继它的每个服务器的时间戳。从这些时间戳中,您应该能够看到延迟的位置。