peewee-async会出现同步的情况,这是为什么?

来源:7-6 通过peewee-async集成到tornado中

qq_洪伊_0

2021-11-10

async def check_k_id(question_id):

    # goods = await objects.execute(My_Tk_question_knowledge.select().where(
    #My_Tk_question_knowledge.question_id == question_id))
    
    goods = await objects.execute(My_Tk_question_knowledge.select().where(
    My_Tk_question_knowledge.id == 2))
    if goods:
        return goods[0]
    return None

老师,看我上面的一个代码块,省略掉的那行是真正需要的代码,但是会出现同步的情况,而去查询主键id的时候却不会,不知道是什么情况,数据库中id是主键。

写回答

1回答

bobby

2021-11-13

你是如何排查出这行会出现同步的情况?是因为运行到这里其他的请求就无法执行了吗?

0
2
bobby
回复
qq_洪伊_0
不能这样来衡量, 是否是同步了, 这么小的并发量,异步和同时差异并不大,你应该看是否阻塞了其他请求无法进行来确定
2021-11-16
共2条回复

Tornado从入门到进阶 打造支持高并发的技术论坛

异步IO并发编程/Form,ORM/aiomysql、peewee-async/epoll

593 学习 · 350 问题

查看课程