我为正在制作的简单批处理电子邮件提出了一个架构。电子邮件发送者将通过运行 cron 作业的 php 脚本每 5 分钟发送 X 封电子邮件。问题是我认为这不是最好的方法,我正在寻找一种替代的、更好的方法;或验证 ;).
(简化的)架构看起来像:
EmailList | JobQue | Jobs
------------|----------|----------
email | jobid | id
| email | esubject
| ebody
这个想法是,当一个新的工作被创建时,它会把它添加到Jobs
表中,每一个需要发送的邮件都会被添加到JobQue
中表。
然后,实际发送电子邮件的 cron'd php 脚本将循环遍历 JobQue
表中的下一个 X 项,发送并删除它们。
这样做的好方法吗?它会在中等负载下弯曲吗? (1000-5000 封电子邮件,每天 1-5 个工作)?当然,如果有更多的电子邮件被添加然后发送,那会不会有其他问题(比如试图一次将 1000 条记录添加到一个表中,即使我用一个 mysql 查询将它们全部插入)?
谢谢,
最大
最佳答案
我认为这是一种非常有效的方法。唯一的问题可能是,如果您想一次发送数千封电子邮件。它可能导致 php 超时。 使用一个查询将数千条记录添加到 mysql 中还不错,这是我的最佳方式。 但我必须说,副本取决于查询本身。如果它太长(我的意思是太长的字符串),那么您可能会失去与服务器的连接。 但我认为您对此架构不会有任何问题。
关于php - 批量通过电子邮件发送 mysql 表设置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9036492/