如何通过SMTP发送批量电子邮件而不为每封电子邮件建立连接?

时间:2013-09-09 15:03:56

标签: email batch-file cron smtp bulk-email

我们有一个大型网站向用户发送不同类型的电子邮件:简报,忘记密码,用户创建的随机订阅等。门户网站非常大,我们需要每天发送数千封电子邮件。

现在组织的方式是所有电子邮件都在数据库中排队,然后有一个cron脚本每分钟读取一次数据库并发送一批X封电子邮件。这个脚本本质上是一个for循环,通过这些X电子邮件,并为每个电子邮件建立一个SMTP连接并发送电子邮件。然而,这会使服务器过载,基本上大部分时间服务器都在忙着逐个发送这些电子邮件。

我想知道是否有办法将这些排队的电子邮件批量发送到SMTP服务器。如果这涉及一些专门的软件,那就是问题,我们可以设置我们自己的SMTP服务器(我们更喜欢基于Linux / Unix的服务器)。例如,可以工作的是每天运行一个cron,将该队列转换为XML文件并将该XML文件发送到SMTP服务器,然后SMTP服务器将解析它并发送所有这些电子邮件。

1 个答案:

答案 0 :(得分:2)

假设您的脚本在Linux或Unix服务器上运行:设置一个配置为null client且启用了connection cache的本地Postfix。让您的脚本通过皮卡提交邮件到本地Postfix。