前言(・ω<) テヘペロ
- 啊学校的抢课进不去。。好想准时抢课(╥╯^╰╥)
- 啊朋友生日要到了,可是我不想熬夜啊啊(╥╯^╰╥)
- 啊拖延症。。真想给自己发封邮件提醒一下(╥╯^╰╥)
看完这篇博客,ok的ヾ(゚∀゚ゞ)
先行知识:什么是celery?什么是flask?
Celery~[芹菜]~:
Celery 是一个由 Python 编写的简单、灵活、可靠的用来处理大量信息的分布式系统,它同时提供操作和维护分布式系统所需的工具。
Celery 专注于实时任务处理,支持任务调度。
说白了,它是一个分布式队列的管理工具,我们可以用 Celery 提供的接口快速实现并管理一个分布式的任务队列。
Flask~[瓶子]~:
Flask是一个使用 Python 编写的轻量级 Web 应用框架。其 WSGI 工具箱采用 Werkzeug ,模板引擎则使用 Jinja2 。Flask使用 BSD 授权。
Flask_mail是flask的一个重要的插件。Flask_mail 连接到简单邮件传输协议 (Simple Mail Transfer Protocol, SMTP) 服务器,并把邮件交给这个服务器发送。
本文章着重于讲解celery,因此对于flask部分不再赘述。
我假设读者会用flask_mail发送邮件。。如果你不会,那么请参考以下文章:
http://pythonhosted.org/Flask-Mail/
https://blog.csdn.net/wbin233/article/details/73222027
给我个例子吧,到底什么是celery
celery的原理很简单,就是一个异步任务队列。
所以开始我们的第一个小实验。
第一个celery程序:
- 依赖:python、redis-server、celery 没有的直接sudo pip3 install XXX
# test.py
from celery import Celery
import time
app=Celery('tasks',backend='redis://localhost:6379/0',broker='redis://localhost:6379/0') #配置好celery的backend和broker
@app.task #普通函数装饰为 celery task