场景

mongoose-paginate-v2 是一个mongoose上的分页插件,我也用过很多次了,但是最近在创建项目遇到了问题。

老代码中不使用分页插件进行查询,然后自己使用中间件进行分页
old codes, 16ms

 @Get('')public async index(@Query() query, @Pager() pager: any, @Req() req: Request, @Res() res: Response) {const map: any = {};if (query.group && query.group !== '') {map.group = query.group;}if (query.username && query.username !== '') {map.username = { $regex: query.username };}const count = await this.model.countDocuments(map);const page = pager.parse(count);console.log(page);const list = await this.model.find(map).sort({ updateAt: -1 }).limit(page.limit).skip(page.skip).select('_id group username device.deviceType deviceType createAt updateAt status enable creator proxy').populate('group');return res.status(HttpStatus.OK).json({message: 'success',data: {list: [],},});}

新代码中使用分页插件,耗时约1.5s 非常的缓慢
use paginate: 1532ms

 public async slow(@Query() query, @Pager() pager: any, @Req() req: Request, @Res() res: Response) {const map: any = {};if (query.group && query.group !== '') {map.group = query.group;}if (query.username && query.username !== '') {map.username = { $regex: query.username };}const count = await this.model.count(map);const page = pager.parser(count);console.log(page);const list = await this.model.paginate(map, {limit: pager.limit,offset: pager.skip,select: '_id group username device.deviceType deviceType createAt updateAt status enable creator proxy',populate: ['group'],sort: { updateAt: -1 },});return res.status(HttpStatus.OK).json({message: 'success',data: list,});}

提issue

我也挺忙的,所以没去看代码,直接提了issue,目前收到回复是需要更新到新版本v1.3.3 更新后回复正常

Issue地址

博客: https://github.com/zhaojunlike

使用mongoose-paginate-v2查询缓慢问题相关推荐

  1. mysql百万数据 查总数都特别慢_mysql百万级数据分页查询缓慢优化方法

    参考网址1:https://www.cnblogs.com/nightOfStreet/p/9647926.html           -------------修改需求 一.与产品商讨 修改需求 ...

  2. oracle mysql查询速度慢_oracle 根据时间范围查询缓慢问题排查解决

    今天生产环境上碰到个奇怪问题,在oracle数据库一个根据时间范围的查询语句居然执行了二十多分钟.一开始打印了执行sql日志之后就毫无反应了,任何错误都没有.把进程反复重启几次也一样.直到二十分钟后就 ...

  3. oracle分页 慢,oracle分页查询缓慢的情况

    这是延续很久的问题了 项目使用的Oracle,一百多万数据,分页显示10条,高配服务器显示首页都要10秒以上,配置差的服务器要好几十秒,实在无法忍受,还不如 mysql的速度 前前后后多次想对这个进行 ...

  4. Day269.口罩预约抢购系统关注的问题、瞬时高流量Mysql查询缓慢原因 -Redis的高并发预约抢购系统

    一.口罩预约抢购系统关注的问题 1.瞬时高流量sku缺乏监控会出现的问题 流量监控问题 如果不是值班人员细心,自己肉眼发现了这个预约SKU的涨幅不正常. 万一稍有疏忽没有观察到流量的异常,一旦到了抢购 ...

  5. oracle+分页很慢,oracle分页查询缓慢的情况

    这是延续很久的问题了 项目使用的Oracle,一百多万数据,分页显示10条,高配服务器显示首页都要10秒以上,配置差的服务器要好几十秒,实在无法忍受,还不如 mysql的速度 前前后后多次想对这个进行 ...

  6. mongoose常用方法(查询篇)

    条件 $or 或关系 $nor 或关系取反 $gt 大于 $gte 大于等于 $lt 小于 $lte 小于等于 $ne 不等于 $in 在多个值范围内 $nin 不在多个值范围内 $all 匹配数组中 ...

  7. express ajax分页实例,element+express+mongoose实现分页查询

    一个element配合express实现分页查询的思路与实现. 技术栈Element Express Mongoose 前端实现 前端的分页使用了Element的分页组件. @current-chan ...

  8. 视图查询缓慢mysql_《高性能MySQL》读书笔记——第一章、MySQL架构与历史

    MySQL最重要的特性是数据的处理与存储分离的存储引擎架构. 一.MySQL逻辑架构 1)第一层架构 -- 连接处理.授权认证.安全等. 2)第二层架构 -- MySQL的核心服务功能:存储过程.触发 ...

  9. laravel where in 查询缓慢优化

    在使用where in 查询,in里面的字段很多的情况下,查询数据库是非常的缓慢 在有些场景下需要进行导入批量的查询,这很难绕过wherein查询 这种情况怎么优化 尝试: 转化成等值查询,循环查询, ...

  10. mysql数据库出现缓慢_MySQL查询缓慢的N种原因,以及N+1种解决方法

    昨天查询数据库的时还正常,今早来上班时,SQL语句查询就突然变得很慢了.这样的情况我相信你一定遇到过. 下面就让小编来带你了解其中的原因吧! 本篇文章简单总结了一下可能导致数据库查询慢的原因,希望能给 ...

最新文章

  1. 循环斐波那契数列_剑指offer #10 斐波那契数列
  2. 4j导入节点与关系_Neo4j Cypher 中怎样根据值动态指定关系类型?
  3. 桌面笔记工具KeepNote
  4. jquery插件开发;(function ( $, window, document, undefined ){}(jQuery, window,document)分析
  5. How to find documentation of given API
  6. sys.stdin.read和raw_input函数
  7. set java底层实现_Java:List,Map,Set底层实现
  8. 数据科学 IPython 笔记本 7.12 透视表
  9. 如何避免点击事件连续操作时元素变蓝
  10. Linux chmod 命令 设置权限
  11. mysql导入大量数据时jbd2 io过高效率低下问题
  12. C语言估算数学常量e,数学常数e
  13. composer介绍
  14. A. Extreme Extension
  15. java把小写变大写_用java实现人民币小写变大写的方法
  16. 利用FFmpeg API进行字符叠加和加水印
  17. tpc ds mysql_TPC-DS 生成数据
  18. SPDK+NVMe SSD对接Virtio支撑红包场景性能
  19. 初识RPC中间件zeroC ICE工具之iceca
  20. 英语基础知识:定语使用规则下篇

热门文章

  1. 思必驰重磅发布AI芯片,同时推出产业破局战略
  2. Java程序员如何高效学习,才能加快成为架构师的步伐
  3. 赋能行业 共建生态 阿里巴巴首次亮相义乌标准展
  4. spring 4.x下让http请求返回json串
  5. iOS开发中的HTML解析
  6. 解决Ubuntu下VNC客户端无法输入s和m的方法
  7. SQL Server DATEDIFF() 函数
  8. 12.RabbitMQ实战 --- 聪明的Rabbit:扩展RabbitMQ
  9. 2.mongoDB 命令
  10. 22.docker wait