为什么ASP.NET SmtpClient.Send()使我的网站不可用?

时间:2010-07-11 02:58:45

标签: asp.net-mvc-2 windows-server-2008 smtpclient

我有一个ASP MVC 2应用程序,通过它我偶尔使用SmtpClient.Send()发送电子邮件。通常,电子邮件分批发送1到50封电子邮件,批次之间经过数小时甚至数天。我已经设置了这一切,以便电子邮件实际上发送得很好。但问题是,当发送电子邮件时,我的网站突然变得不可用大约15分钟,我不明白为什么。

我的网站托管在具有第三方网络托管服务器的共享Windows 2008服务器上。

以下是我的web.config文件中的相关部分,已针对隐私进行了编辑:

<system.net> 
  <mailSettings>
    <smtp deliveryMethod="Network" from="fromemail@doman.com">
      <network host="mail.DOMAIN.COM" userName="username" password="password"/>
    </smtp>
  </mailSettings>
</system.net> 

有没有人对为什么会发生这种情况有任何想法或想法?我一直在努力研究它和谷歌它已经有一段时间了,但我只是没想出任何东西。

2 个答案:

答案 0 :(得分:1)

这可能是很多不同的事情,但是......

我建议您做的第一件事是在您的站点上启用ASP.NET Health Monitoring。这应该有助于您了解导致此问题的异常(A guide to using Health Monitoring)。

出于显而易见的原因,请确保不要选择邮件提供程序向您发送异常 - 可能使用SQL提供程序或编写写入文件的自定义提供程序。

我还会要求您的主机查看事件日志中的任何可能有价值的信息。

希望有所帮助。

答案 1 :(得分:0)

电子邮件可能是一项昂贵的操作。您是否考虑过使用异步电子邮件发送,以便该进程不会阻止您的主线程?