多个过滤类和排序类可以公用, filter_backends=[],可以配置多个,执行顺序是从左往后,所以放在最左侧的尽量先过滤掉大部分数据
问 : 在工作中遇到注入多个分类排序的接口情况,如何解决?
在写xx接口的时候, 因为我们过滤的条件很多, 搜索数据库就变得很慢, 写了很多搜索类,之前的时候搜索的排序是随意的, 没有什么先后顺序, 后来读了drf搜索类的源码之后, 发现执行顺序是从左往右执行的, 我就想到了最左侧的搜索类是被最快搜索道德, 并且过滤掉的数据是最多的, 后续再去搜索就会变得很快, 所以我调整了一下搜索类的配置顺序,就发新了这个接口的效率确实提高了不少。
-你们公司唯一id号如何生成的?
生成订单号:唯一的:uuid
-使用uuid:uuid好像有重复的可能,我们知道有重复的可能,但是我们没有遇到过,可能因为
数据量比较小
-如果使用时间戳:会重复
-时间戳+mysq1自增(速度慢)
-时间戳+redis自增
-雪花算法,美图1eaf算法。。。