在asp.net发送简讯到大约10000封电子邮件

我必须写申请发送时事通讯.
发送简讯用户的最佳方式是什么?
我的要求是

>每封邮件分别为:
>每封邮件都有唯一的取消订阅链接

使用.net的SMTP邮件类是好的吗?
我看起来可能有问题,但不能决定我应该去哪个approcah?
有很多建议

>多线程Windows服务
>使用邮件服务器
>在每次发送之间添加thread.sleep(2000).

任何人都可以提出好的方法来改变这种情况吗?

解决方法

我不推荐使用asp.net网页发送,即使你是在一个单独的后台线程中启动它.我认为你冒着服务器在发送过程中回收你的进程的风险,这会搞砸它.您真的需要编写某种单独的服务或应用程序来发送您的电子邮件.

最简单的选择是创建一个快速和脏的控制台或Windows窗体应用程序.

记录也很重要,就像其他海报所说的那样.如果它失败了你想要确切地知道发送了什么以及它停止了什么,这样当你重新启动它时,你不会邮寄所有它再次工作的人.您希望能够输入发送的起点,因此如果您需要重新启动号码电子邮件#5000,您可以.

System.Net.Mail命名空间中的类可以很好地发送邮件.

最大的问题之一是找到一个电子邮件主机,让你发送这么多电子邮件.大多数电子邮件主机都有限制,有时它会根据服务器条件而变化,因此如果服务器使用频繁,那么电子邮件限制将更加严格,您每小时只能设置500封电子邮件.

我们有一份新闻通讯,作为单独的电子邮件发送给大约20000人,我们不得不玩电子邮件间的延迟,直到我们发现一个适用于我们的电子邮件主机.我们在电子邮件间的结束时间为1.2秒,因此这可能是一个很好的起点.

我认为有电子邮件主机专门用于批量邮件,所以如果你得到其中一个可能不是问题.

此外,如果您托管自己的电子邮件,这可能不是问题.如果您确实托管了自己的邮件,您可以选择将邮件丢弃在拾取目录中,然后您可以根据需要将其全部转储到那里,然后让电子邮件服务按照自己的步调进行检索.

编辑:这是添加配置文件以设置拾取目录的设置

<system.net>
    <mailSettings>
        <smtp from="support@test.com" deliveryMethod="SpecifiedPickupDirectory" >
            <specifiedPickupDirectory pickupDirectoryLocation="Z:\Path\To\Pickup"/>
        </smtp>
    </mailSettings>
</system.net>

相关文章

这篇文章主要讲解了“WPF如何实现带筛选功能的DataGrid”,文...
本篇内容介绍了“基于WPF如何实现3D画廊动画效果”的有关知识...
Some samples are below for ASP.Net web form controls:(fr...
问题描述: 对于未定义为 System.String 的列,唯一有效的值...
最近用到了CalendarExtender,结果不知道为什么发生了错位,...
ASP.NET 2.0 page lifecyle ASP.NET 2.0 event sequence cha...