gpt4 book ai didi

Django:在后台发送电子邮件的最佳方式?

转载 作者:行者123 更新时间:2023-12-04 15:01:30 24 4
gpt4 key购买 nike

我正在从 Django 发送电子邮件(使用 Webfaction)。然而,这很慢,所以我想在后台发送电子邮件,即使电子邮件尚未发送也向用户返回响应。

关于什么是最好的方法的任何想法?

我读过有关 celery 的文章,但设置它似乎需要很多步骤:http://markliu.me/2011/sep/29/django-celery-on-webfaction-using-rabbitmq/没关系,但我想知道这是尝试之前要走的路。

线程呢? http://www.artfulcode.net/articles/threading-django/

还是 cron 工作? http://docs.webfaction.com/software/general.html

其他你有经验吗?

最佳答案

让我们简单概述一下可能的解决方案:

  • 线程是糟糕的解决方案 - 因为它们仅在您的响应未发送之前才有效。
  • Celery - 是标准方式,很容易添加到 django(只需查看有关 django-celery 的大量教程之一,对于您使用数据库作为代理的任务就足够了)
  • Cron 作业 - 不是真正好的程序员方式,因为您的代码将存储在您的 repo 和系统 crontab 中。所以每次你都应该考虑一下。
  • 另一种方法是使用 Eventlet 或 Gevent 之类的东西。绿色线程将在空闲状态下工作,并且对于您的标准任务 - 很容易添加。缺点: - 你应该对greenlet了解很多,你应该小心在greenlet中捕捉错误。

  • 我推荐使用 Celery,因为现在添加它很容易,有很多教程和文档。此外,它会随着您的应用程序而轻松成长。

    关于Django:在后台发送电子邮件的最佳方式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13567160/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com