构建批量邮件发件人 [英] Building a bulk mail sender

查看:143
本文介绍了构建批量邮件发件人的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想建立一个允许我的客户通过电子邮件发送营销信息的应用程序。这将是一个仔细监控的工具,仅用于合法批量邮件。它将具有所有必要的取消订阅功能等。

I want to build an application that will allow my customers to send marketing information by e-mail. This will be a carefully monitored tool used for legitimate bulk mailing only. It's going to have all of the necessary 'unsubscribe' functionality etc.

该解决方案将使用VB.NET构建。

The solution will be built using VB.NET.

我的问题涉及实际发送电子邮件的最佳方式。我们在我们的数据中心有一个SMTP服务器,我们可以使用它。我想我们可以编写一些多线程窗口服务来监视要发送的电子邮件的数据库,然后调用System.Net.Mail API通过此服务器发送。

My question relates to the best way to actually send the e-mails. We have an SMTP server in our data centre which we can use. I'm thinking we could write some kind of multi-threaded windows service to monitor a database of e-mails to send, then make calls to the System.Net.Mail API to send through this server.

这是否会给我一个表现水平,我需要在合理的时间内向数千个用户发送邮件?

Is this going to give me the level of performance I need to send mail to thousands of users in a sensible time frame?

如果不是,我应该在较低级别上做事情,在一个线程中执行DNS查找,直接发送到另一个线程的端口25上的相关服务器,等等?

If not, should I be looking at doing things at a 'lower level', performing DNS lookups in one thread, sending direct to the relevant server on port 25 in another thread, etc?

任何指针都将不胜感激!

Any pointers would be appreciated!

目前,我们正在从 ActiveUp 查看名为ActiveMail的产品。

Not really an answer - but an update for anyone interested... I'm currently looking at a product called ActiveMail from ActiveUp.

这似乎是一个MTA(执行自己的MX查找并直接发送邮件),它附带一个多线程排队应用程序。

This seems to be an MTA (performing its own MX lookups and sending the mail directly), and it comes with a multi-threaded queuing application.

推荐答案

我认为这并不难推出类似的东西你自己。建一个大概需要一天的时间。但是,您应该使用现有的东西要好一些。

I think it's not that difficult to roll something like that on your own. It would take a day or so to build. But you should be much better off using something existing.

仍然有一些我在批量电子邮件中发现的重要事项:

Still, some things I found important when doing Bulk-Email:

不要使用您自己的SMTP发送这些。

查找收件人的MX条目,并将SMTPClient连接到他们的 SMTP,这给你的好处是,当您找不到邮箱或其他错误时,您会收到即时错误msg,您不要强调自己的服务器。

Lookup the MX entries for your recipients and connect the SMTPClient to their SMTP, this gives you the benefit that you get an instant error msg back when the mailbox is not found or something else is wrong, and you don't stress your own server.

SmtpClient还有一个小错误,给我麻烦,因为主机名不是完全限定的域名(根据SMTP规范的要求),而是机器名称(这是一个内部字段在SmtpClient内)。某些SMTP服务器认真对待,而需要一个域名,所以我最终将该域设置为FQDN。 (希望以后更改)

There was also a little bug in SmtpClient that gave me trouble because the hostname isn't a fully qualified domain name (as requested by the SMTP spec) but the machine name (and that's an internal field inside SmtpClient). Some SMTP servers take that seriously and want a domainname instead, so I ended up setting that field with reflection to a FQDN. (Hopefully this was changed since)

这篇关于构建批量邮件发件人的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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