【问题标题】:How to send a mail without having to wait for the operation to complete如何发送邮件而无需等待操作完成
【发布时间】:2015-02-17 15:09:48
【问题描述】:

在我的 Yii 1.1 应用程序中,我需要在正确创建记录后发送 2 封电子邮件,但由于电子邮件功能很慢(我使用 SMTP 身份验证),用户每次都必须等待 4-6 秒。 我尝试使用 php exec 函数,但我调用的脚本没有 Yii 框架。 有没有办法只调用一个动作或一个邮件函数而不必等待? runaction Yii 扩展对我不起作用,我尝试使用它,但 runBackground 函数从未被触发。

【问题讨论】:

  • 创建一个消息队列。 Yii 有一个叫做邮件队列的东西

标签: php email yii sendmail


【解决方案1】:

您好,我了解您的要求,您知道 Yii 深受 Ruby on Rails 的启发。在 Ruby on Rails 中,有一个 Delayed Job 。好在 Yii 有一定的扩展性,对于后台工作,请看这个,

Yii Delayed Job

希望这会有所帮助。

【讨论】:

    【解决方案2】:

    您是否有权访问服务器上的调度程序(如cron)?将消息保存到每分钟以非交互方式处理的队列。

    【讨论】:

    • 我的问题是我不知道我是否可以访问服务器 crons
    • 外部服务器可以通过HTTP自动调用脚本。我不会称这个解决方案最可靠,把它作为最后的手段。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-08-17
    • 2014-12-22
    • 1970-01-01
    • 2013-04-09
    • 1970-01-01
    相关资源
    最近更新 更多