Flask+Celery+Blueprint

其他博主已经有成套的博客,这里就不赘述,仅记录遇到的问题。

遇到1个问题:任务写入了broker,但是celery执行任务时报错拒绝访问句柄6错误

解决方法:
pip install gevent

celery -A my_shop.task.tasks worker -l info -P gevent

 

Flask+VUE3课程B站上有成套的。

核心代码结构如下:

image

__init__py 代码如下:

 1 from flask import Flask
 2 from flask_sqlalchemy import SQLAlchemy
 3 from config import config_map
 4 from flask_migrate import Migrate
 5 
 6 db = SQLAlchemy()
 7 
 8 def create_app(config_name):
 9     app = Flask(__name__)
10     print('config_name:' + config_name)
11     obj = config_map.get(config_name if config_name else 'develop')
12     # 将配置应用到app 有三种方式
13     app.config.from_object(obj)
14     # 初始化数据库
15     db.init_app(app)
16     # migrate = Migrate(app, db)
17     migrate = Migrate()
18     migrate.init_app(app=app,db=db)
19     # 引入蓝图,需要放在内部import,初始化db后再导入蓝图
20     from my_shop.user import user
21     app.register_blueprint(user)
22     from my_shop.menu import menu
23     app.register_blueprint(menu)
24     from my_shop.role import role
25     app.register_blueprint(role)
26     from my_shop.category import category
27     app.register_blueprint(category)
28     from my_shop.category import attribute
29     app.register_blueprint(attribute)
30     # 注册task的蓝图
31     from my_shop.task import task
32     app.register_blueprint(task)
33     return app

tasks.py代码如下:

 1 from celery import Celery
 2 import time
 3 
 4 celery = Celery("tasks",
 5                 broker="redis://localhost:6379/3",
 6                 backend="redis://localhost:6379/4")
 7 
 8 @celery.task
 9 def send_mail():
10     print('测试异步任务开始....')
11     time.sleep(3)
12     print('测试异步任务结束')
13     return 'OK'

task/__init__.py代码如下:

from flask import Blueprint

task = Blueprint('task', __name__)

from my_shop.task import view

task/view.py代码如下:

 1 from my_shop.task import task
 2 from my_shop.task.tasks import send_mail
 3 
 4 @task.route('/add_task',methods=['GET'])
 5 def add_task():
 6     """
 7     添加任务
 8     :return: 
 9     """
10     send_mail.delay()
11     return '添加成功 !!!'

 

posted @ 2025-11-17 21:19  丶会飞的羊  阅读(6)  评论(0)    收藏  举报