我应该如何开始分析/优化我的java应用程序/ oracle数据库?

时间:2010-09-09 07:29:31

标签: java oracle optimization toad visualvm

昨天我读了一些关于应用程序优化的内容,以及程序员应该如何找到程序中最常用的部分,并通过分析和修改它们获得最大的好处(当查看投入的时间/工作与内存/速度增益时)。现在,我已经运行了Eclipse分析器,得到了VisualVM,但我不知道如何正确使用这些数据。我主要担心的是内存使用情况(我正在生成一个XML,要么将其作为zip存储到磁盘上,要么将其作为zip压缩到用户下载)并从数据库中减速(我怀疑我的索引不存在或者不好,无论如何,不​​太了解他们,所以我不能告诉你更多:)但我甚至不知道如何开始这个。对于第一种情况,VisalVM显示该程序最多使用200MB,但是当我检查堆转储并单击最常用的对象(或它的调用方式)时,信息是压倒性的。对于第二种情况,我知道甚至更少,除了Toad有一些工具。

我想知道的是如何开始这样做,当我对本地性能感到满意时,如何在生产应用程序上执行此操作。

Edit1:所以,对于内存使用的具体示例(我正在生成XML并将其作为zip存储到磁盘或将其作为zip压缩到用户下载)。这是我选择“堆转储”时获得的,然后按保留大小选择前20个对象并打开详细信息:Heapdump screenshot

这就是我在同一个用例上打开Profiler时得到的结果:

alt text

问题是,这个屏幕告诉我什么? :)

1 个答案:

答案 0 :(得分:3)

就数据库应用程序而言,我将从阅读Cary Millsap的优秀文章开始:

http://method-r.com/downloads/cat_view/38-papers-and-articles

搜索“与Oracle数据库结交朋友”,例如......