我有一个访问数据库的 Java 应用程序。我在本地计算机上使用本地数据库对其进行了测试,它运行良好。但是当我在应用程序服务器和数据库服务器不同的测试环境中对其进行测试时,性能非常慢。我能想到的可能原因是:
- 获取数据库连接的时间
- 总体网络流量
- 选择和传输的数据量
- 数据库服务器上的负载(访问数据库的其他应用程序)。
- 服务器配置(例如分配的内存、连接池大小等)
还有哪些原因会影响性能?
我正在将 JDBC 与 MySQL 结合使用。如能得到任何帮助,我将不胜感激。
答案1
最有可能的候选因素是网络延迟和负载。数据库服务器是否被其他应用程序使用?数据库服务器的延迟是多少?可用带宽是多少?
我会从数据库服务器上的一些查询分析开始调查。您可以轻松比较生产数据库和本地数据库上的查询时间,以确定服务器本身是否是一个因素。如果不是,请继续分析网络。