我正在使用 smtplib 相当频繁地发送邮件。我使用自己的 SMTP 服务器作为中继。问题是每次发出连接时 smtplib.SMTP(...) 整个过程都会被阻塞。我是 python(v3) 的新手,想知道 smtplib 是否已经支持异步邮件。我还尝试将阻塞工作负载委托(delegate)给 MTA(例如 sendmail),然后在 python 代码中发出单独的进程,这样它就不会阻塞流程。我不确定这是否是好的做法。对我的情况来说什么是好的解决方案?
请您参考如下方法:
您可以使用消息队列(例如 rabbit MQ)来做到这一点。 您不是直接发送电子邮件,而是将消息留在队列中。 发布到队列中会立即返回。 然后,在后台,一些进程正在清空队列并发送电子邮件。
更多信息在这里:http://www.rabbitmq.com/
