Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP邮件队列。它到底是如何工作的?_Php - Fatal编程技术网

PHP邮件队列。它到底是如何工作的?

PHP邮件队列。它到底是如何工作的?,php,Php,假设我向30000个用户发送了一封电子邮件,并在我的队列列表中添加了一个250。如果我关闭浏览器窗口或只需要运行一次页面,它会停止发送电子邮件吗?如果服务器在邮件发送的中间出现了什么? 嗯,有很多情况,我会尝试通过它们。 如果我关闭浏览器窗口,它会停止发送电子邮件吗? 不,如果您在发送请求后关闭浏览器窗口,它将不会停止发送,因为您的服务器可能已经收到请求并正在处理数据 只有当服务器需要来自用户/浏览器的持续输入时,它才会停止,因为用户已经在队列列表中,所以在您的情况下不需要这样做 如果服务器停机

假设我向30000个用户发送了一封电子邮件,并在我的队列列表中添加了一个250。如果我关闭浏览器窗口或只需要运行一次页面,它会停止发送电子邮件吗?如果服务器在邮件发送的中间出现了什么?

嗯,有很多情况,我会尝试通过它们。

如果我关闭浏览器窗口,它会停止发送电子邮件吗?

不,如果您在发送请求后关闭浏览器窗口,它将不会停止发送,因为您的服务器可能已经收到请求并正在处理数据

只有当服务器需要来自用户/浏览器的持续输入时,它才会停止,因为用户已经在队列列表中,所以在您的情况下不需要这样做

如果服务器停机怎么办?

如果服务器处于邮件发送的中间,则当服务器返回时,未发送的邮件将稍后发送,因为Mayl队列将以某种形式的持久存储方式存储队列。p>


如果服务器崩溃,邮件队列中的文件/数据库丢失,邮件当然不会发送。

即使关闭浏览器,也不会停止发送邮件,因为php脚本将继续执行。无论何时运行php脚本,都不必保持页面打开。但是,对于这样的事情,你应该考虑CLI接口,为了跟踪你的状态,不管怎样,测试一个队列中有多少电子邮件会更好,或者取决于服务器速度。任何建议我都认为MayLayQuez已经实现了这些启发式算法,所以你可以把所有的邮件放到队列中。邮件队列将最好地处理发送。这就是邮件队列的基本用途——处理发送大量电子邮件。