2011-11-04 76 views
0

在我的Django的代码,我有类似如下:创建一个新的线程来电子邮件管理员

#ajax call 
    ... 
    try: 
     do sth 
     ... 
    except Exception as e: 
     _email_admin() 
     return HttpResponseServerError(e) 

以上会,然而,返回给用户,这绝对不是很酷的减缓。

所以我要问,如果你能在分叉一个新的线程来发送邮件,这样就不会耽误返回给用户的可能性告诉我?

谢谢。

PS:我知道,如果我不捕获异常,创建一个500错误,Django的将电子邮件发送管理员。但是我需要捕获异常,以便我仍然可以返回Ajax调用。

回答

1

您的代码做同样的事情Django的会做,只是将其删除。我不记得,如果邮件都在工作线程发送,但它不要紧 - 如果你要发送错误邮件,那么你的代码是。节省几毫秒将绝对不会给您带来任何收益。特别是这是异步调用。

而且,像这样的东西,你的芹菜,或者类似的东西更好,而不是创建线程。

+0

感谢您指出,“如果你要发送错误邮件,那么你的代码被打破”。 –

相关问题