gpt4 book ai didi

java - 如何提高对数据库进行多次调用的Java应用程序的性能?

转载 作者:行者123 更新时间:2023-11-30 03:32:59 25 4
gpt4 key购买 nike

据我了解,java 程序的执行速度非常快,导致应用程序变慢的主要是网络和 IO 操作。

例如,如果我有一个运行 10000 次的 for 循环,它会打开一个文件,处理一些数据并将数据保存回文件中。 如果应用程序确实很慢,那不是因为循环执行了 10000 次,而是因为文件在循环内打开和关闭。

我有一个 MVC 应用程序,在查看页面之前,我会先通过一个 Controller ,该 Controller 依次调用服务,最后调用一些 DAO 方法。

问题是在页面加载之前触发了太多查询,因此页面加载时间为 2 分钟,这很可悲。

由于服务调用各种 DAO 方法,并且每个 DAO 方法使用不同的连接对象,因此我想到这样做:“仅创建一个服务将调用的 DAO 方法,并且此 DAO 方法将触发一个 DAO 方法上的所有查询连接对象。”

因此这将节省连接和断开数据库的时间。

但是,我的应用程序中的连接对象来自连接池。大多数连接池不会关闭连接,它们只是将它们发送回连接池。所以我的上述解决方案不会有任何效果,因为无论如何都没有打开和关闭连接。

如何提高应用程序的性能?

最佳答案

首先,您应该使用 Profiler 等工具准确确定时间花在哪里。

一旦知道根本原因,您就可以查看是否可以优化操作,即删除不必要的步骤。如果没有,那么您可以查看操作结果是否可以缓存并重用。

如果没有准确理解耗时的处理,就很难做出任何合理的优化。

关于java - 如何提高对数据库进行多次调用的Java应用程序的性能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28581906/

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