遇到查询几十万数据的时候接口查询很慢的场景(十几秒),用分析工具debug_toolbar(官方文档推荐工具)发现查询count的sql执行很慢,而且sql里面有个“distinct”,并且是对查询的所有字段进行去重,排查后发现是
django_filters.MultipleChoiceFilter的默认参数distinct为True
置为False后,查询速度恢复正常,优化后响应时间不到一秒。
遇到查询几十万数据的时候接口查询很慢的场景(十几秒),用分析工具debug_toolbar(官方文档推荐工具)发现查询count的sql执行很慢,而且sql里面有个“distinct”,并且是对查询的所有字段进行去重,排查后发现是
django_filters.MultipleChoiceFilter的默认参数distinct为True
置为False后,查询速度恢复正常,优化后响应时间不到一秒。