扫码关注官方订阅号
84669人学习
65727人学习
82984人学习
467778人学习
498837人学习
471966人学习
256484人学习
152542人学习
224170人学习
139536人学习
81804人学习
85022人学习
11944人学习
20001人学习
60816人学习
5487人学习
15007人学习
2150人学习
6980人学习
194925人学习
359900人学习
1142人学习
19058人学习
3206人学习
180550人学习
48569人学习
17603人学习
40936人学习
1049人学习
750人学习
32909人学习
用户Passport系统,注册,找回密码都是通过邮件发送验证码,有什么好的方案实现。我之前用的是私人的QQ邮箱,发现偶尔系统会来一封邮件要我输入验证码,而且就怕用多了会被腾讯拉黑或者自动移到垃圾箱处理。还有就是什么情况下发送邮件需要用队列?
拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...
邮件量大,比较耗时的情况下,可以采用异步的消息队列。将要发送的邮件塞入消息队列,你的当前流程就结束了,然后用消息中间件,订阅者自己订阅自己的发布者的消息,对收到的消息进行邮件发送。发送邮件代码如下:
@Override public void sendText(String[] to, String subject, String content) { if (ENV_ONLINE.equals(environment)) { simpleMailMessage.setTo(to); simpleMailMessage.setSubject(subject); } else { simpleMailMessage.setTo(adminEmail); simpleMailMessage.setSubject(subject + Arrays.asList(to)); } simpleMailMessage.setSentDate(new Date()); final String result = content; simpleMailMessage.setText(content); mailSender.send(simpleMailMessage); logger.error("Mailsentto: " + Arrays.asList(simpleMailMessage.getTo()) + "\nContent: " + result); }
曾经使用过阿里的免费企业邮箱,发送到国内的126,QQ和Gmail都没问题。其他的邮箱偶尔会出现在“垃圾邮件”里。
使用异步实现一般会考虑使用消息队列,可以考虑django celery + RabbitMQ
以下情况需要用到邮件队列:1.给多个用户批量发送邮件的时候,必须异步调用队列发送,因为点击发送后,操作者有可能关闭了页面,此时只有后台异步发送邮件才不至于漏发邮件。2.注册 登录 找回密码 可用用短信平台验证码实现,也可用用邮件服务区实现。
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
扫描下载App
Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
精品班
技术支持
技术咨询
学习群
会员优惠
返回顶部
邮件量大,比较耗时的情况下,可以采用异步的消息队列。将要发送的邮件塞入消息队列,你的当前流程就结束了,然后用消息中间件,订阅者自己订阅自己的发布者的消息,对收到的消息进行邮件发送。发送邮件代码如下:
曾经使用过阿里的免费企业邮箱,发送到国内的126,QQ和Gmail都没问题。其他的邮箱偶尔会出现在“垃圾邮件”里。
使用异步实现一般会考虑使用消息队列,可以考虑django celery + RabbitMQ
以下情况需要用到邮件队列:
1.给多个用户批量发送邮件的时候,必须异步调用队列发送,因为点击发送后,操作者有可能关闭了页面,此时只有后台异步发送邮件才不至于漏发邮件。
2.注册 登录 找回密码 可用用短信平台验证码实现,也可用用邮件服务区实现。