当前位置: 首页 > 工具软件 > Redis Queue > 使用案例 >

Quart环境使用Redis Queue(rq)异步处理队列涉及数据库操作样例

舒仲渊
2023-12-01

Quart 环境 + Redis Queue函数操作

对于Class中或者任意独立使用aysnc修饰的函数

#import content
from quart import current_app
from yourapp import create_app
#重新定义Quart App实例
if current_app:
    app = current_app
    print(current_app)
else:
    app = create_app()
    db.init_app(app)
    print(app)

async def task():
	async with app.app_context():
		#quart 环境的 数据库操作 
		#example (sqlite)
		Task.query(name=name) 
#Redis Queue函数调用
@bd.get(/api/task)
async def launchtask():
	#In app.py中create_app中定义app相关于redis queue属性
	#app.redis = Redis.from_url(config["development"].REDIS_URL)
    #app.task_queue = rq.Queue("microblog-tasks",connection=app.redis)
	rq_job = current_app.task_queue.enqueue('social_network_analysis.tasks.task.' + name, yourargs,
                                                *args, **kwargs)
 类似资料: