Django Rest Framework 的性能优化,
像django初学者 经常遇到的关于 select_related与prefetch_related嵌套序列化 多次访问数据库的问题,这里就不多赘述了,没看过的朋友请看这篇文章 嵌套序列化优化
正文开始
- queryset.only()
很多时候我们在使用 Serializer 序列化,如果 fields 不等于 __all__的时候,这时候,在我们的 viewsset 中, 获取queryset的时候,尽量加上 .only() 来控制不查询多余的字段,尤其是有大内容的字段,比如具有TextField的时候,并且TextField 不在 Serializer的字段中时,一定要加上.only(),这会同时降低内存与数据库的压力。