假设我的数据库中有 200 个用户,目前托管在共享主机上。我想向他们发送一份时事通讯,并且每 5 分钟只发送 10 封电子邮件。
我将使用phpmailer发送时事通讯。问题..
- 使用现有数据库发送时事通讯而不将其导出到第三方服务的好概念是什么?
- 确保脚本不会同时发送重复通讯的关键是什么?
- 实现我的目标的好习惯是什么。
让我知道
假设我的数据库中有 200 个用户,目前托管在共享主机上。我想向他们发送一份时事通讯,并且每 5 分钟只发送 10 封电子邮件。
我将使用phpmailer发送时事通讯。问题..
让我知道
您应该只使用具有良好 API 的 3d 派对服务。从长远来看,工作量会少得多。
您还没有考虑过退回处理、退订、域密钥、避免黑名单等等。
充其量您的消息将最终进入垃圾邮箱。
更糟糕的是,您的 IP 将被禁止,并且您的帐户因发送未经请求的电子邮件而被终止(您的 ISP 不会关心他们是否真的注册了它)。
设置一个任务以从数据库中选择固定数量的未发送时事通讯(我会删除已发送的时事通讯或将它们标记为已发送,或者将它们移动到另一个表)。在您的情况下,您显然希望每 5 分钟发送 10 封邮件,因此将任务设置为获取 10 封电子邮件并发送。然后设置一个 cron 并让它每五分钟运行一次……如果你只打算每周发送一次 / 两次电子邮件,可能会有一个更优雅的解决方案。您可以使用 sleep 命令执行一些 while 循环,但这并不是特别有效的资源......相对较快。