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