我们有一个应用程序,允许用户向存储在数据库中的客户发送电子邮件。它是一个ASP.NET应用程序,它使用AspMail发送这些电子邮件。
该应用程序会逐个发送电子邮件,以防用户选择太多客户。 我们看到有些用户拥有超过10,000个客户,当他们向他们发送电子邮件时,我们遇到了问题,例如Hotmail。由于电子邮件过多,他们会阻止我们的IP。这些邮件有时会阻止我们的邮件服务器。
我们想要最好的方法来做到这一点。也许最好只向成千上万的人发送一封电子邮件。
我们能做什么?最好一个一个发送?还有其他方法吗?
答案 0 :(得分:0)
群发电子邮件可能产生的无数问题是电子邮件服务诞生的原因。有各种各样的邮件服务提供商都有很好的文档API,您可以直接从.net使用。 Mailgun就是我用过的一个例子。他们已经建立了自己的传递服务,可以通过电子邮件可靠地发送到Hotmail和其
以下是电子邮件服务提供商的一些链接。
答案 1 :(得分:0)
一种解决方案是批量发送您的电子邮件。您可以使用控制台应用程序来实现此目的;我已经成功使用了2000封电子邮件,每100封电子邮件之间有一段休息时间:
http://www.codersbarn.com/post/2011/11/08/Calling-Console-Application-from-Web-Form.aspx
while (dr.Read())
{
....
toAddress = dr[1].ToString();
// Send email in batches of 100 with a 30 second pause between each batch
if ((count >= 100) && (count % 100 == 0))
Thread.Sleep(30000);
....
}