Python socket OSError: [Errno 101] Network is unreachable,如何在云端启动celery

当我们把项目部署到云端上,再发送邮件时,我们启动的celery异步任务出错。在Windows上没有错,而在centos上报错。重写了此任务。
解决方案:

def send_verify_email(verify_code,to_email):
    smtp = smtplib.SMTP_SSL("smtp.qq.com")

    smtp.ehlo("smtp.qq.com")
    smtp.login('[email protected]', 'bjtenrwpbsxgebah')
    msg = MIMEMultipart()


    subject = Header('BannerStudio旗帜软件工作室', 'utf-8').encode()
    msg['Subject'] = subject

    msg['From'] = 'qq2259583140'

    msg['To'] = to_email
    m='您的验证码为%s'%(verify_code)

    text = MIMEText(m, 'plain', 'utf-8')
    msg.attach(text)

    smtp.sendmail('[email protected]', to_email, msg.as_string())
    smtp.quit()

`

同时,因为我们已经部署在云端上了。因此要用守护进程的方式去开启celery队列,
开启:celery multi start w1 -A celery_test -l info
停止:celery multi stop w1 -A celery_test -l info
重启:celery multi restart w1 -A celery_test -l info

你可能感兴趣的:(Django,REST,framework,django,后端)