赞
踩
pip3 install flask celery
包含 app.py,config.py。
app.py:
- from flask import Flask, flash, render_template, request, redirect, url_for
- from celery import Celery
-
-
- app = Flask(__name__)
- app.config.from_object("config")
- app.secret_key = app.config['SECRET_KEY']
-
- client = Celery(app.name, broker=app.config['CELERY_BROKER_URL'])
- client.conf.update(app.config)
-
- @app.route('/', methods=['GET', 'POST'])
- def index():
- if request.method == 'GET':
- send_mail.apply_async(args=['data'], countdown=5)
- return 'get ' + app.secret_key
-
- elif request.method == 'POST':
- # flash(“Message scheduled”)
- send_mail.apply_async(args=['data'], countdown=5)
- return 'post'
-
- @client.task
- def send_mail(data):
- """ Function to send emails.
- """
- with app.app_context():
- msg = {}
- msg_body = data
- print(msg_body)
- return msg_body
-
- if __name__ == '__main__':
- app.run(host='0.0.0.0',port=8000,debug=True)
-

config.py:
- CELERY_BROKER_URL = 'redis://localhost:6379/0'
- SECRET_KEY = 'sk1'
启动:celery -A app.client worker --loglevel=info --autoscale=5,1
启动:docker run -d -p 6379:6379 redis
pip3 install flower==1.2.0
启动:celery --broker=redis://localhost:6379/0 flower --port=8080
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。