返回过多行
Optimize 提供建议,帮助您识别和解决由查询返回过多行引起的性能问题。
以下针对 User
模型的查询未提供 take
选项
await prisma.user.findMany({ where: { email: "janedoe@gmail.com" }})
有什么问题?
当执行查询时未指定限制,它将返回所有相关行,这可能导致一些问题
用户体验
- 查看数据:用户通常只需要在任何给定时间看到一部分数据,而不是全部。
- 对用户设备的影响:一次性显示所有数据会占用用户设备资源。例如,在 Web 应用中加载成千上万行数据可能会导致浏览器变慢或冻结,消耗大量内存和 CPU 资源。
- 等待时间:检索大量行会显著增加将数据从数据库获取到用户设备所需的时间。
资源利用
- 不必要的数据加载:处理超出需求的数据会浪费宝贵的资源。
- 内存使用:过多的内存消耗可能导致效率低下,严重时甚至导致系统内存耗尽,中断服务。