2009-12-28 106 views
1

我即将发布“即将推出”页面,我需要的一件事就是让用户输入他们的电子邮件地址,以便我在网站上线后发送电子邮件。做这个的最好方式是什么?如何处理海量电子邮件

我应该将电子邮件存储在数据库中,然后运行PHP脚本通过我的Web主机向他们发送电子邮件?我是否应该收集电子邮件,然后通过本地或从服务器手动发送电子邮件?我还有另外一种方法吗?

此外,是否有某些网络主机限制您可以发送的电子邮件的数量,从而导致群发电子邮件的问题。

目前唯一的“未知”是我会得到多大的回应...只有时间才能证明。

谢谢你们!

回答

2

将其存储在数据库中 - 是的。这与存储任何其他数据无异。

群发电子邮件一次 - 没有

群发电子邮件手动(或手动单独邮寄) - 无

做一些网站的主机限制你多少能一次发送? - 是的

我不知道“最好”的方式,但我知道一个很好的方法。我们已经建立了几个大规模的电子邮件程序,我们整合的技术是一种节流技术,我们每三分钟就有一个脚本运行,并一次发送20封电子邮件。

它使服务器免于窒息和邮件队列超过我们主机的任何邮件限制。

+2

关于每3分钟发送20封邮件没有什么“大规模” – 2011-07-20 21:39:26

+0

每3分钟20封邮件=每小时400封,每天9600封电子邮件=每月288,000封电子邮件,这对于共享主机帐户很有用。 hostgator,每小时限制300个。如果您发送用户注册的电子邮件,则应在发送新闻邮件之前先发送重要电子邮件。否则它不会达到,因为共享主机帐户的限制。对于其他服务器,它不是一个问题。 – Basit 2012-11-19 08:13:30

0

将电子邮件写入数据库或文本/日志文件都是存储电子邮件的好方法。

根据您收到多少封电子邮件,您可能需要编写一个程序(PHP作品)向每个人发送单独的电子邮件。不要从普通电子邮件客户端发送大量电子邮件给大型收件人:所有人。

也有商业程序管理邮件列表的人(可能也是开源的)。这些商业广告大多提供免费试用期。

1

将电子邮件地址存储在数据库中,然后编写批量作业,邮件将它们合并到消息中并根据需要发送出去。

1

像Eric上面提到的,另一个选择是使用商业服务来管理你的邮件列表。

我使用Mailchimp(http://www.mailchimp.com)。他们为您提供您所需的一切(注册表单,电子邮件模板等),并且除非您的名单增长到超过500名订户,否则它们是完全免费的。

1

有几十种方法可以用于这类问题,但不幸的是,没有真正的方法可以为您找出解决方案,因为有很多变量。

如果您只收到3个回复,那么您可能需要使用BCC:从您的电子邮件客户端手动发送电子邮件给用户。你已经拥有了完成这些工作所需的所有工具,并且设置脚本可能会浪费时间。然而,这不是一个很好的长期解决方案。

对于大多数中等规模的网站,您可以将电子邮件存储在数据库中,然后使用邮寄脚本将其发送出去。 PHPMailer是帮助发送邮件的好工具,并且您可以手动管理大量电子邮件地址。但是,由于您必须处理取消订阅链接,脚本超时,退回的电子邮件等,所以手动管理地址可能有点麻烦。

如果您起床了数以万计的电子邮件地址,则可能需要启动查看可以进行线程发送的第三方邮件软件或服务。通过PHP脚本循环发送电子邮件给5万人可能会很慢,并需要数小时。

基本上你必须衡量每种方法的难度,时间和成本,以及你认为你需要多少灵活性和强大功能。

1

将电子邮件存储在数据库中并使用cronjob发送出去是解决此问题的好方法,如果您对在一段时间内允许发送的电子邮件数量有限制,您可以通过跟踪您每次运行cronjob时发送的邮件数量来处理它。 此外,还有开源产品要做到这一点,如phplist http://www.phplist.com/