gpt4 book ai didi

java - JPA:查询执行时间长的可能原因

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:45:06 25 4
gpt4 key购买 nike

我有一个使用 JPA 查询的 spring boot 应用程序。直接在实时 Oracle DB 上执行相同的查询往往会在大约 20-40 毫秒内给出结果。另一方面,当我尝试使用该应用程序进行点击时,所用时间从 1-2 秒到 50-60 秒不等。

我想了解这种行为的原因,以及为什么它的行为不可预测。我们怀疑可能是池中的线程数量有限,但后来在将应用程序与外部使用隔离后,现在只有一个用户表现出相同的行为。

查询应该以快速的方式一致地执行。我想知道这种行为背后的可能原因。

最佳答案

它真的可以是任何东西,例如不可靠的网络、争用的数据库资源、JDBC 驱动程序配置错误或 JVM GC 暂停。尝试确定问题出在哪里:发生问题时是 Java 客户端还是正在占用时间的数据库服务器。

如果您怀疑问题出在数据库上,最好跟踪数据库服务器端的连接和 SQL 查询。这将为您提供最多的信息,例如查询执行计划。每个数据库都有自己的工具,例如Oracle 文档有 entire chapter on Performing Application Tracing .

关于java - JPA:查询执行时间长的可能原因,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55687440/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com