Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 序列化PonyORM查询或对象列表的最有效方法_Python_Serialization_Fastapi_Pydantic_Ponyorm - Fatal编程技术网

Python 序列化PonyORM查询或对象列表的最有效方法

Python 序列化PonyORM查询或对象列表的最有效方法,python,serialization,fastapi,pydantic,ponyorm,Python,Serialization,Fastapi,Pydantic,Ponyorm,我有一个FastAPI微服务,我使用Pony作为ORM连接到PostgreSQL,目前,我使用Pydantic序列化对象和对象列表以发送给用户 但最近我发现FastAPI和Pydantic序列化列表的方式效率不高。FastAPI处理列表序列化的方式是迭代它并序列化每个对象,我理解他们为什么选择这个,但是当您使用PonyORM时,这会带来太多的时间开销(我不知道为什么) 现在,我正在寻找使数据(尤其是查询)序列化更快的方法。通过查询序列化,我的意思是,例如,从数据库中获取5个条目并序列化它们,而无

我有一个FastAPI微服务,我使用Pony作为ORM连接到PostgreSQL,目前,我使用Pydantic序列化对象和对象列表以发送给用户

但最近我发现FastAPI和Pydantic序列化列表的方式效率不高。FastAPI处理列表序列化的方式是迭代它并序列化每个对象,我理解他们为什么选择这个,但是当您使用PonyORM时,这会带来太多的时间开销(我不知道为什么)

现在,我正在寻找使数据(尤其是查询)序列化更快的方法。通过查询序列化,我的意思是,例如,从数据库中获取5个条目并序列化它们,而无需列出列表并进行迭代。我知道我最终必须在某个地方迭代某些东西,但迭代列表似乎不是一个好的解决方案。我还尝试了在Pony中实现的
to_dict()
方法,但效果不大


注意:我不是在寻找缓存解决方案,我想知道是否有针对此类问题的低级解决方案。在这一点上,我不知道我问的问题是否正确

你所说的“当你使用PonyORM时会有很多时间开销”是什么意思?PonyORM本身更快吗?我的意思是,与使用SQLAlchemy作为ORM相比,我认为这与pony从db获取数据的方式有关。我将用更多的信息编辑这个问题。你说的“使用PonyORM时会有很多时间开销”是什么意思?PonyORM本身更快吗?我的意思是,与使用SQLAlchemy作为ORM相比,我认为这与pony从db获取数据的方式有关。我将用更多信息编辑此问题。