面试问题回答集锦

2023-11-06

多个过滤类和排序类可以公用, filter_backends=[],可以配置多个,执行顺序是从左往后,所以放在最左侧的尽量先过滤掉大部分数据

问 : 在工作中遇到注入多个分类排序的接口情况,如何解决?

在写xx接口的时候, 因为我们过滤的条件很多, 搜索数据库就变得很慢, 写了很多搜索类,之前的时候搜索的排序是随意的, 没有什么先后顺序, 后来读了drf搜索类的源码之后, 发现执行顺序是从左往右执行的, 我就想到了最左侧的搜索类是被最快搜索道德, 并且过滤掉的数据是最多的, 后续再去搜索就会变得很快, 所以我调整了一下搜索类的配置顺序,就发新了这个接口的效率确实提高了不少。

 


-你们公司唯一id号如何生成的?

 

生成订单号:唯一的:uuid

-使用uuid:uuid好像有重复的可能,我们知道有重复的可能,但是我们没有遇到过,可能因为
数据量比较小
-如果使用时间戳:会重复
-时间戳+mysq1自增(速度慢)
-时间戳+redis自增
-雪花算法,美图1eaf算法。。。

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

面试问题回答集锦 的相关文章

随机推荐

  • Java提高篇-----TreeMap

    TreeMap的实现是红黑树算法的实现 所以要了解TreeMap就必须对红黑树有一定的了解 其实这篇博文的名字叫做 根据红黑树的算法来分析TreeMap的实现 但是为了与Java提高篇系列博文保持一致还是叫做TreeMap比较好 通过这篇博
  • DevOps 学习(二)-DevOps 的工具链工具链

    DevOps 的工具链 DevOps中包括版本控制 协作开发工具 自动化构建和测试工具 持续集成 交付工具 部署工具 维护工具 监控 警告 分析工具等等 补充了一些国内的服务 可以让你更好的执行实施 DevOps 工作流 版本控制 协作开发
  • C语言 字符串 统计字串子母串出现的次数

    include
  • 定位算法启动流程

    工作空间humble ws 一 安装定位激光驱动 https github com RoboSense LiDAR rslidar sdk cd humble ws src 将rslidar sdk和rslidar msg包git到src目
  • 微信消息订阅功能开发流程

    一 可实现订阅消息推送 1 服务号 a 创建服务号类型的公众号并进行认证 认证的流程 补充公司营业执照相关信息 公司对公账号打款 三方电话认证等 以及300元认证费 b 申请模板消息功能 c 添加消息模板 d 添加模板消息发送接口 1 获取
  • minio 安装流程(linux)

    一 下载安装文件 1 在home目录下创建minio文件夹 mkdir home minio 2 进入 home minio 文件夹 cd home minio 3 下载文件 wget https dl minio org cn serve
  • 14LinuxC线程学习之查看当前pthread库版本和线程使用的注意事项(重要)

    1 查看当前pthread库版本 1 查看当前pthread库版本 getconf GNU LIBPTHREAD VERSION 2 NPTL名词了解 NPTL实现机制 POSIX Native POSIX Thread Library 3
  • VS2019/VS2022移动安装位置/C盘瘦身的一个好方法,亲测有效

    下面是vs2019 VS2022更换安装位置的方法 如果已经安装 未安装一样创建链接即可 不需要剪切文件这一步 方法类似 将安装好的文件剪切到其他盘 然后mklink链接即可 通过上面方法 我的VS2019跟VS2022一起安装了 都在使用
  • java8之stream流之Collector和Collectors

    Collector Collector是专门用来作为Stream的collect方法的参数的 public interface Stream
  • STM32程序调试技巧

    Table of Contents 前言 调试原理 软件调试 硬件调试 前言 这一篇博客主要讲解STM32F1开发板如何进行调试 分别是硬件调试 STLINK 调试和软件调试 调试原理 STM32的调试原理核心是比较复杂的 但是我们了解的东
  • 学习笔记——概率论与数理统计(第八章)

    学习笔记 概率论与数理统计 第八章 第八章 假设检验 8 1 基本概念 8 1 1 假设检验问题 8 1 2 假设检验基本概念 8 1 3 假设检验的思想与步骤 思想 步骤 8 1 4 两类错误 8 2 一个正态总体的参数假设检验 8 2
  • React官方中文文档【安装】

    https reactjs org docs getting started html React官方文档地址 1 入门 此页面是React文档和相关资源的概述 React是一个用于构建用户界面的JavaScript库 在我们的主页或教程中
  • Android 导入library,手把手教学

    引言 导入封装好的功能工程在自己的工程上 等于直接 给自己的工程上一件 装备 提升实力 PS 我曾经代入别人的工程 并实现了主工程 Application 和导入工程 library 的界面跳转与函数的调用 其中有各种各样的困难和错误 所以
  • Intel MKL 稀疏矩阵求解PARDISO 函数

    Intel MKL提供了针对稀疏矩阵求解的PARDISO 接口 它是在共享内存机器上 实现的稀疏矩阵的直接求解方法 对于一些大规模的计算问题 PARDISO的算法表现了非常好的计算效率与并行性 一些数值测试表明 随着计算节点数目增加 PAR
  • 超详细的VsCode创建SpringBoot项目(图文并茂)

    文章目录 超详细的VsCode创建SpringBoot项目 图文并茂 一 安装jdk 1 OpenJDK 2 Java SE Development Kit 8 二 安装maven 1 下载 2 配置环境变量 可选 3 修改settings
  • Python UI自动化 —— 关键字+excel表格数据驱动

    步骤 1 对selenium进行二次封装 创建关键字的库 2 准备一个表格文件来写入所有测试用例步骤 3 对表格内容进行读取 使用映射关系来对用例进行调用执行 4 执行用例 1 对selenium进行二次封装 创建关键字的库 from ti
  • java自定义高效map转json逻辑实现

    场景 笔者发现后端对网页提供的json接口数据 都不是特别复杂 所以为了提高json的转换效率 在笔者自己写的struts 1 0 0框架里 自主实现了一个map转json的类 内部返回值都是map封装 效率非常高 基本不会超过1ms 望大
  • win10——‘’WLAN‘’没有有效的IP配置

    前言 小编的笔记本最近突然连不上无线网了 本来用的好好的 突然不能用了 有点不得劲 不得劲就得给他搞得劲了 先看看小编的错误 然后再给您展示我的解决方案 错误提示 连不上网很难受 但是解决了肯定很爽 由于小编也没有遇到过这个问题 所以小编就
  • 全网最细之HiveQL语句操作

    HiveQL语句操作 关键字尽量大写 但是本人小写容易记忆 所以本篇为小写 数据库 创建一个数据库 查看数据库 修改数据库信息 删除数据库 普通表 创建表 查看表 修改表名 添加n列 修改表 修改位置 单独修改列名 数据类型 替换列 删除n
  • 面试问题回答集锦

    多个过滤类和排序类可以公用 filter backends 可以配置多个 执行顺序是从左往后 所以放在最左侧的尽量先过滤掉大部分数据 问 在工作中遇到注入多个分类排序的接口情况 如何解决 在写xx接口的时候 因为我们过滤的条件很多 搜索数据