如何高效的向大量用户,发送邮件?

假设管理员要向几百万用户发送邮件通知,怎么要怎么高效的实现?
每个人都绑定了邮箱,邮件能正常发送和接收,这几百万用户要怎么查询才高效?分块查询然后foreach到发送邮件的队列?

GDDD
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
讨论数量: 13

楼上说的都是片面的,在如此发送量面前多线程以及队列都是大型邮件系统中的一小部分而已;
如果楼主想自己实现这个百万级别邮件模块你需要了解的知识有:

  • IP 预热,所谓的预热就是通过慢慢的提高发送频率以达到让 ESP(Email Service Provider) 信任你 IP 的目的
  • IP 托管,一些严格的 ESP 甚至会对你的周围 IP 进行是否有过违规行为(发送垃圾邮件)进行检测,所以你需要一大段连续的 IP 地址,一般人很难做到这点
  • 域名的维护、使用公认的 DNS、mx 记录指向、相对于每个 ESP 使用正确的认证机制(SPF、DKIM……)、良好的邮件发送记录维护、根据软回弹策略正确的处理回退邮件(FBL)、邮件内容的过滤机制……

否则你的邮件送达率可以说基本为0,所以楼主如果你不是想发送垃圾邮件的话,还是走第三方吧,Mailgun 是个不错的选择

以上内容都可以在 Mailgun 的最佳实践中找到相关说明:documentation.mailgun.com/en/lates... ,此外 Mailgun 作为大型邮件服务提供商,它们官方输出的博客也非常具有参考意义 www.mailgun.com/blog/category/for-...

2年前 评论
24K大白羊 2年前

我觉得这个业务可以mq来实现

2年前 评论

你的头像我傻傻的等了一分钟

2年前 评论

添加到队列里面,开多个线程去队列里面消费,实现发送邮件给用户。

2年前 评论

队列分发,1000人一个队列,多线程异步很快的

2年前 评论

@奕鹏 PHP如何实现多线程发送邮件,可以举个demo么?

2年前 评论
wuyan94zl 2年前
奕鹏 2年前
candivan 2年前

楼上说的都是片面的,在如此发送量面前多线程以及队列都是大型邮件系统中的一小部分而已;
如果楼主想自己实现这个百万级别邮件模块你需要了解的知识有:

  • IP 预热,所谓的预热就是通过慢慢的提高发送频率以达到让 ESP(Email Service Provider) 信任你 IP 的目的
  • IP 托管,一些严格的 ESP 甚至会对你的周围 IP 进行是否有过违规行为(发送垃圾邮件)进行检测,所以你需要一大段连续的 IP 地址,一般人很难做到这点
  • 域名的维护、使用公认的 DNS、mx 记录指向、相对于每个 ESP 使用正确的认证机制(SPF、DKIM……)、良好的邮件发送记录维护、根据软回弹策略正确的处理回退邮件(FBL)、邮件内容的过滤机制……

否则你的邮件送达率可以说基本为0,所以楼主如果你不是想发送垃圾邮件的话,还是走第三方吧,Mailgun 是个不错的选择

以上内容都可以在 Mailgun 的最佳实践中找到相关说明:documentation.mailgun.com/en/lates... ,此外 Mailgun 作为大型邮件服务提供商,它们官方输出的博客也非常具有参考意义 www.mailgun.com/blog/category/for-...

2年前 评论
24K大白羊 2年前

mq,多线程发

2年前 评论

用swoole协程去发

2年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!