假设有一个用户在网站上执行了某个操作并通知管理员。 假设需要通知20名管理员。使用Django发送电子邮件的常规方法,用户必须等待所有电子邮件发送完成才能继续。
如何在单独的进程中发送所有电子邮件以便用户无需等待?这是否可能?
假设有一个用户在网站上执行了某个操作并通知管理员。 假设需要通知20名管理员。使用Django发送电子邮件的常规方法,用户必须等待所有电子邮件发送完成才能继续。
如何在单独的进程中发送所有电子邮件以便用户无需等待?这是否可能?
使用 celery 作为任务队列,并使用 django-celery-email,它是一个Django邮件后端,将电子邮件发送分派给一个celery任务。
django.core.mail
API,就不需要更改代码。备用电子邮件后端负责celery集成。但是,您可以(轻松地)编写其他任意celery任务以在后台执行,这非常方便。 - andreaspelme# This Python file uses the following encoding: utf-8
#threading
from threading import Thread
...
class afegeixThread(Thread):
def __init__ (self,usuari, parameter=None):
Thread.__init__(self)
self.parameter = parameter
...
def run(self):
errors = []
try:
if self.paramenter:
....
except Exception, e:
...
...
n = afegeixThread( 'p1' )
n.start()