【问题标题】:ASP.NET Slow email sendingASP.NET 邮件发送慢
【发布时间】:2009-12-22 17:33:35
【问题描述】:

在我的网络应用程序 (ASP.NET MVC) 中,我使用以下内容发送电子邮件:

        MailMessage msg = new MailMessage("email@domain.com", "somewhere@recipient");
        msg.Body = "Message body";
        msg.IsBodyHtml = false;
        SmtpClient client = new SmtpClient();
        msg.Subject = "Subject";
        client.Send(msg);

我的system.net邮件设置在web.config中如下:

  <system.net>
    <mailSettings>
      <smtp deliveryMethod="Network" from="email@domain.com">
        <network host="mail.domain.com" port="25" defaultCredentials="false" userName="email@domain.com" password="mypassword" />
      </smtp>
    </mailSettings>
  </system.net>

这会很好地发送电子邮件。我遇到的唯一问题是在函数调用后 2-3 分钟内发送和接收电子邮件。

我在两台使用 SmarterMail 的主机上看到了这种情况,在我询问 serverfault.com 上的好人然后询问我的主机之前,我想知道是否有任何编码方面的东西可能导致这种情况 2-3延迟一分钟。

这似乎可以忽略不计,但我作为一名网络冲浪者,讨厌我应该收到很长时间的电子邮件,特别是如果它们包含登录信息等重要信息。

【问题讨论】:

    标签: asp.net email


    【解决方案1】:

    我认为这与您的服务器网络流量有关。

    【讨论】:

      【解决方案2】:

      有两种简单的方法可以测试交付延迟是否是由您的程序引起的:

      1. 通过其他方式发送邮件,例如,通过启动邮件客户端或使用某些command-line mail client(使用相同的 SMTP 服务器)。如果邮件显示相同的延迟,则与您的软件无关。

      2. 或者,您可以查看其中一封已接收邮件的标头:它们现在应该显示邮件在沿途每个邮件服务器上花费的时间。如果您在解释标题时遇到问题,请将它们添加到您的问题或have a look at one of the tutorials online

      (顺便说一句,我同意 Ozan 的假设,即延迟是由邮件服务器而不是由您的程序引起的。)

      【讨论】:

        猜你喜欢
        • 2010-12-08
        • 1970-01-01
        • 2012-04-20
        • 1970-01-01
        • 2012-12-11
        • 2016-09-15
        • 2011-06-26
        • 2011-03-12
        • 1970-01-01
        相关资源
        最近更新 更多