数据库
首页 > 数据库> > php-我应该在发送之前在数据库中将电子邮件排队,而不是即时发送吗?

php-我应该在发送之前在数据库中将电子邮件排队,而不是即时发送吗?

作者:互联网

我正在开发一个网站,该网站在某些事件/用户操作(在照片中标记,添加为朋友等)之后向用户发送电子邮件通知.

根据我的经验,从Web服务器发送电子邮件可能很慢.例如,当创建一个新用户时,我将发送一封电子邮件以确认/欢迎该帐户.但是,在页面发送完电子邮件后,有时会有短暂的停顿,等待页面加载.

我担心的是,如果我在连接到邮件服务器时遇到问题,或者邮件服务器超载,它将成为我的应用程序/页面加载的瓶颈

所以我的问题是,从始终发送电子邮件的Web应用程序发送电子邮件的最佳方法是什么?

我是否应该通过将电子邮件内容存储在数据库中然后创建计划的cron作业来处理所有未发送的电子邮件来创建队列系统?

还是在用户完成操作/事件(创建会员帐户,在照片中标记等等)之后直接发送电子邮件?

解决方法:

否.请您的系统管理员来配置邮件服务器.正确配置的邮件服务器应比将邮件存储在数据库上更快.

使用本地发送以避免网络延迟.
[邮件功能]
sendmail_path = /usr/sbin / sendmail
在php.ini中

即使邮件服务器关闭(消息将排队),它也能正常工作.

标签:application-design,performance,email,scaling,php
来源: https://codeday.me/bug/20191023/1913766.html