我需要从我的纯Flask应用程序发送邮件,所以我认为最简单的方法是使用smtplib进行发送。但我必须异步地执行它 - 你不能只是在请求中插入一个3秒的延迟 - 对吧?因此,我将电子邮件添加到队列(psql表)中,并从另一个程序中发送该电子邮件,该程序读取此表并使用smtplib发送。
这个第二个程序(maildonkey)作为独立的进程运行,在独立的upstart服务中运行。
现在我需要另一个小的异步服务,我在考虑是否应编写另一个Python脚本(第三个,包括我的Flask应用程序和“maildonkey”),还是应该使用类似于Python的'multiprocess'或甚至'reads'并重写第二个程序?
(当我使用Clojure编程时,我可以使用“futures”轻松在单独的线程中运行代码,因此通常会这样做。)