gpt4 book ai didi

java - jdbc 性能

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

关于 JDBC 性能优化,我需要你们的帮助。我们的一个 pojo 正在使用 jdbc 连接到 oracle 数据库并检索记录。基本上,记录是电子邮件地址,基于这些地址将向用户发送电子邮件。这里的问题是性能。这个过程每个周末都会发生,记录数量非常庞大,大约有 10 万条。

性能很慢,让我们很担心。似乎每 1 小时从数据库中提取 1000 条记录,这意味着完成此过程需要 100 小时(这很糟糕)。请帮我解决这个问题。

数据库服务器和java进程在两个不同的远程服务器上。我们使用了 rs_email.setFetchSize(1000); 希望它会有所不同,但根本没有改变。在服务器上执行的相同查询需要 0.35 秒才能完成。任何快速建议都会对我们有很大帮助。

谢谢,阿默。

最佳答案

首先查看您的查询。分析它们。看看 SQL 是否可以变得更高效(即,向数据库询问您想要什么,而不是您不想要什么——这会有很大的不同)。还要检查您的 where 和 join 子句中的任何字段是否有索引。索引有很大的不同。但它不能只是任何索引。它们必须是好的索引(即构成索引的字段为数据库提供足够的唯一性以适本地检索内容)。与您的 DBA 合作解决这个问题。查找针对数据库的高运行时间或检查具有高 CPU 使用率的查询(即使查询运行亚秒级)。这些是可以杀死您的数据库的东西。

同样从代码的角度来看,检查您是否正在打开和关闭您的连接,或者您是否正在重新使用它们。也可以产生很大的不同。

这将有助于发布您的代码、查询、表格布局和您拥有的任何索引。

关于java - jdbc 性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8911227/

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