在asp.net中发送时事通讯围绕10000电子邮件 [英] Send Newsletter in asp.net to around 10000 emails

查看:168
本文介绍了在asp.net中发送时事通讯围绕10000电子邮件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我要发送简讯编写应用。
什么是向用户发送的通讯thoundands的最好方法?
我的要求是

i have to write application for sending newsletter. what is the best way to send newsletter thoundands of users? My requirement is


  1. 每个邮件seprately为收件人:

  2. 每个邮件都有独特的退订链接

时是很好用的SMTP邮件类.NET的?
我看在如此风靡5月的问题,但不能决定哪些approcah我应该去?
有很多建议

Is is good to use SMTP mail class of .net? I look aound may questions in so but can't decide which approcah i should go? There are many suggestions


  1. 多线程Windows服务

  2. 使用邮件服务器

  3. 添加每个发送的Thread.sleep代码(2000)。

任何人都可以建议imepement这个好办法?

can anyone suggest good way to imepement this?

推荐答案

我不建议asp.net网页发送,即使你不启动它在一个单独的后台线程。我会认为你运行服务器回收利用过程中的发送中间的风险,这会搞砸了。你真的需要写一些单独的服务或应用程序发送电子邮件。

I would not recommend asp.net webpage to send, even if you do start it in a separate background thread. I would think you run the risk of the server recycling your process in the middle of the send, which would mess it up. You really need to write some kind of separate service or application to send your emails.

最简单的办法是只创建一个快速和肮脏的控制台或Windows窗体应用程序。

The simplest option would be to just create a quick and dirty console or windows form application.

另外记录是非常关键的,就像其他的海报说。如果失败了,你想知道究竟得到了发送出去,并在那里停止,以便当您重新启动它,你不邮件的所有谁它的工作再次百姓。你想成为能够输入发送的出发点,所以如果你需要一些电子邮件#重新启动5000就可以了。

Also logging is critical just like the other poster said. If it fails you want to know exactly what got sent out and where it stopped so that when you restart it you don't mail all the people who it did work for again. You want to be able to input the starting point for the send, so if you need to restart at number email #5000 you can.

在System.Net.Mail命名空间中的类将工作得很好,用于发送邮件。

The classes in System.Net.Mail namespace will work just fine for sending your mail.

一个最大的问题都会找到一个电子邮件主机,可以让你送那么多的电子邮件。大多数电子邮件主机有节流和某个这取决于服务器环境的变化,所以如果服务器被大量使用,那么该电子邮件的限制将更加严格,你可能只能得到设定每小时500电子邮件。

One of the biggest problems will be finding a email host that will let you send so many emails. Most email hosts have throttling and sometime it changes depending upon server conditions so if the server is being heavily used then the email limits will be more restrictive, and you may only get to set 500 emails per hour.

我们有出去围绕20000人作为单独的电子邮件时事通讯,我们有,直到我们找到一个会为我们的电子邮件主机工作玩弄电子邮件之间的延迟。我们结束了与电子邮件之间1.2秒,所以这可能是一个很好的起点。

We have a newsletter that goes out to around 20000 people as separate emails and we had to play around with the delay between emails until we found one that would work for our email host. We ended up with 1.2 sec between emails, so that might be a good starting point.

我觉得有邮件主机专门从事批量邮件虽然如此,如果你得到其中的一个可能不是一个问题。

I think there are email hosts specialize in bulk mailings though so if you get one of those it might not be a problem.

此外,如果你的主机您自己的电子邮件,这可能不是一个问题。如果你做主持人自己的邮件,你将在拾取目录下探邮件的选项,你可以只转储它都在那里一样快,你想要的,让电子邮件服务赶上来,在它自己的步伐。

Also if you host your own email this may not be a problem. And if you do host your own mail you will have the option of dropping the mail in the pickup directory and you could just dump it all in there as fast as you want, and let the email service pick it up at it's own pace.

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

Here is the settings to add to the config file for setting the pickup directory

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

这篇关于在asp.net中发送时事通讯围绕10000电子邮件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆