我有一个用例,我必须在我的视图中将send_email发送给用户。现在,提交表单的用户在发送电子邮件之前不会收到HTTP响应。我不想让用户等待send_mail。所以我想异步发送邮件而不关心电子邮件错误。我正在使用芹菜来发送邮件异步,但我已经读到这对于像这样的简单任务来说可能是一种过度杀伤力。如何在不使用芹菜的情况下实现上述任务
答案 0 :(得分:1)
我假设您不想等待,因为您正在使用外部服务(您无法控制)来发送电子邮件。如果是这种情况,则将本地SMTP服务器设置为中继。 Amazon SES,SendGrid,Mandrill / Mailchimp等许多服务都有如何操作的说明。应用程序只需等待传递到localhost(这应该很快并且在您的控制范围内)。最终交付将异步转发到请求/响应。 STMP服务器已经构建为通过重试来处理交付失败,这是您可以通过迁移到Celery获得的。