【问题标题】:How to send 1000+ emails per day using an ASP.NET Web site如何使用 ASP.NET 网站每天发送 1000 多封电子邮件
【发布时间】:2010-12-17 20:47:25
【问题描述】:

我们的网站需要每天向所有选择提醒的客户发送 1000 多封电子邮件。在几个月的时间里,我们预计我们的客户群会增加到 5,000 人,因此我们可能需要每天发送 5000 多封邮件。

目前我们正在使用 GoDaddy 电子邮件服务器(与我们的域关联的电子邮件服务),它允许我们每天仅发送 250 封邮件。这远远低于我们的需要。

是否有任何基于云的服务允许我们发送任意数量的邮件?还是我们必须在我们的专用托管服务器上安装电子邮件服务器?

请给我建议这个问题的可能解决方案以及所需的软件/服务。

更新:我们有在后台运行的 Windows 服务来生成所需的电子邮件并使用 SmtpClient 类发送它们。我们的问题是 GoDaddy 施加的限制(每天只有 250 封电子邮件)

【问题讨论】:

标签: asp.net email


【解决方案1】:

如果您不能或不想安装自己的邮件服务器,那么一种选择是查找目标邮件服务器的 MX 记录,并使用 SmtpClient 类直接从您的应用程序进行传递。

理想情况下,您应该从后台线程执行此操作(Windows 服务会更好),以尽量减少对网站其余部分的干扰。

IIRC、MX DNS 查找不能作为标准框架调用使用。但是,使用 p/invoke 添加它们非常容易。

【讨论】:

  • 我们正在使用 Windows 服务来生成电子邮件内容、电子邮件发件人 ID 和发送邮件所需的其他内容。我们的问题是通过 Go Daddy 服务器进行中继。他们不允许我们每天转发超过 250 封邮件。
  • 嗯,这基本上就是“编写您自己的简单 SMTP 中继服务器”。我强烈建议使用现有的解决方案(例如 IIS 中包含的 SMTP 服务器)。
  • 这是一个很好的观点,可惜他没有得到你的方法。
  • 他不会建立自己的 smtp 服务器,他只会为不同的收件人使用不同的服务器,例如域的权威服务器。所有邮件服务器都使用相同的协议,无论它们是中继服务器还是收件人服务器。
  • 如果您对您的机器有足够的控制权来安装 SMTP 服务器,那当然是另一种选择。这样,服务器将为您处理排队和重试。查找 MX 记录并自己进行直接交付是一种解决方法,以防万一。无论哪种情况,只要您的服务器具有静态 IP 地址,被识别为垃圾邮件发送者的风险是相同的。
【解决方案2】:

有许多不同的解决方案。如果您想发送所有您想要的电子邮件,您需要在所有电子邮件提供商(如 Hotmail、Yahoo Mail、GMail)中获得良好的声誉。这可能非常困难,因为他们根据 IP 做所有事情,并且在云中获得固定 IP 可能很困难。

您可以使用提供商(例如 smartFOCUS DIGITAL)为您发送电子邮件,他们负责维护与 ESP 的声誉。

【讨论】:

  • smartFOCUS digital 是否允许我们发送系统生成的电子邮件?
  • 是的,他们有一个 API,您可以将电子邮件内容推送到他们的系统中然后发送。
【解决方案3】:

我建议您使用自己的邮件服务器。某些电子邮件服务器设置为检查发件人邮件服务器是否有权发送电子邮件。我的意思是发件人电子邮件服务器必须获得授权才能发送您域的电子邮件。否则接收电子邮件服务器会丢弃电子邮件。

【讨论】:

  • 你能给我在 Windows 主机上安装邮件服务器的选项吗?还如何将该服务器标记为授权发送电子邮件?
【解决方案4】:

虽然这个问题有点过时了。我最近搜索了一个主机,偶然发现了JodoHost.com。他们有一个经销商计划,您可以在其中将域归类为“群发邮件”。您必须签署一份弃权书,声明您不会将其用于垃圾邮件,但他们会给您“无限制”的电子邮件。

您需要与他们确认 5000 多封电子邮件不会成为问题。

现在除了找到一个允许您发送这么多电子邮件的主机(因为许多 ISP 也会阻止这个数字),您有两个选择。

  1. 投资专用服务器。通过这种方式,您可以在服务器上托管任意数量的站点并发送任意数量的电子邮件。 MailEnable 是一款非常适合使用的应用程序,尽管它的免费版本仅限于一个域。使用此选项,与廉价的 GoDaddy 托管相比,您的成本将显着增加。
  2. 使用第三方服务发送群发邮件。以前的雇主有一个超过 40,000 名用户的列表,我们使用第三方服务来管理我们的列表。这样一来,他们负责管理该列表大小的许多细节(添加、删除、垃圾邮件投诉等)。

【讨论】:

    【解决方案5】:

    简单的解决方案是不要使用网站发送所有这些电子邮件,只需使用桌面应用程序即可。

    不需要云中的专用服务器,安装一个 smtp 服务器就可以了。 好吧,还有一个批量电子邮件组件,例如:aspnetmail

    【讨论】:

    • 我假设他希望发送电子邮件。这样做可能会导致 IP 被视为垃圾邮件发送者地址
    • 这可能是关键——与其特别担心在哪里,不如担心你需要做什么来确保发送系统被视为合法(重要的是要注意,这是人们可能会做的事情)无论如何,作为一个系统管理员是合理的)。
    猜你喜欢
    • 2011-04-01
    • 2014-05-22
    • 1970-01-01
    • 2011-02-07
    • 2013-08-22
    • 1970-01-01
    • 2018-06-15
    • 2012-09-07
    • 2011-12-22
    相关资源
    最近更新 更多