Django和Gunicorn的异步任务



我有一个用例,我必须在我的视图send_email给用户。现在,提交表单的用户在发送电子邮件之前不会收到HTTP响应。我不想让用户等待send_mail。所以我想异步发送邮件,而不关心邮件错误。我正在使用使用芹菜异步发送邮件,但我已经读到,它可能是一个多余的简单的任务,像这样。如何在不使用芹菜的情况下实现上述任务

我假设您不想等待,因为您正在使用外部服务(超出您的控制范围)发送电子邮件。如果是这种情况,那么设置一个本地SMTP服务器作为中继。许多服务,如Amazon SES、SendGrid、Mandrill/Mailchimp,都有关于如何做到这一点的说明。应用程序只需要等待交付给localhost(这应该很快,并且在您的控制范围内)。最终的交付将异步转发到请求/响应。STMP服务器已经构建为通过重试来处理交付失败,这是您可能通过迁移到芹菜获得的。

相关内容

  • 没有找到相关文章

最新更新