如何使用phpmailer更快地发送大HTML电子邮件?

时间:2013-06-01 08:58:47

标签: php phpmailer

我有一台服务器正在为客户端发送电子邮件,每分钟5000张:) 我有10个vps的设置只有PHP和邮件服务器。在每个vps上有10个cronjobs,每个发送50封邮件。他们从另一台服务器的mysql队列中收集电子邮件,并将电子邮件发送到自己的vps中。

到目前为止一切顺利。当发送的电子邮件有一个小的html代码(如最多400-500行代码)时,它可以正常工作。一个cronjob在大约30秒内发送了50封这样的电子邮件。 Cronjobs每分钟运行一次,以便不会产生过载,如果cronjob在一分钟内没有完成,它会自行杀死并将未发回的电子邮件放入队列中。所以下一个cronjob继续在另一个离开的地方。

我的问题是,拥有1000或2000行html代码的大型电子邮件需要花费更长的时间才能发送。例如,在0.5-0.8秒内发送4-500行电子邮件,因此cronjob在不到一分钟内完成发送50封电子邮件,但是大约2秒内发送1000多行电子邮件,因此cronjob永远不能完成发送50封分钟。

问题是服务器每分钟发送一封包含5000封电子邮件的电子邮件广告系列,但每分钟发送一封不超过2000-3000封电子邮件的大型电子邮件广告系列。这意味着速度的一半。

是否有人知道将大型html电子邮件发送得更快的解决方案?

我正在使用php 5.13,phpmailer和一个带有ssd硬件的8核3.4 Ghz服务器。

任何帮助或想法将不胜感激! 谢谢!

1 个答案:

答案 0 :(得分:1)

  

是否有人知道将大型html电子邮件发送得更快的解决方案?

正确的问题是“发送电子邮件需要花费多少时间?”。如果您回答这个问题,那么回答“如何更快地发送电子邮件?”会更容易。

所以,安装xdebugxhprof,分析您的代码,了解需要花费大量时间,优化,获胜的内容。