2010-02-24 48 views
3

在運行websphere 7和DB2的java應用程序上進行性能分析,我們可以看到我們大部分時間都花在處理與數據庫的連接的com.ibm.ws.rsadapter.jdbc包中。DB2 jdbc性能

  1. 我們如何調整我們的jdbc性能?

  2. 當數據庫性能成爲瓶頸時,還存在哪些其他策略?

感謝

回答

3

您應該檢查websphere manual你如何配置一個連接池。

Here是一本介紹inculding代碼樣本

+0

感謝您的鏈接,我們有一個連接池,但我不知道如何在DB2方面衡量。 – user271858 2010-02-25 12:32:33

1

在我的經驗,你看到的是很常見的。要問的問題是,DB2連接究竟是幹什麼的...

首先要做的就是嘗試將性能問題隔離到網站的一部分 - 即應用程序的一部分當您發現可以增加跟蹤日誌記錄以查看是否可以看到導致問題的查詢時,性能很差。

此外,如果您與您的DBA聊天,他們可能會對數據庫運行一些分析以告訴您哪些查詢花費時間返回值,這可能也有助於您的故障排除。

祝你好運!

+0

我認爲是時候和DBA交談了。 – user271858 2010-02-25 12:33:07

2

緩慢連接時間的一個原因是停用的數據庫,在第一個應用程序嘗試連接到該數據庫之前,該數據庫不會打開其文件並分配其內存緩衝區和堆。在運行測試之前,請求DBA確認數據庫處於活動狀態。 LIST ACTIVE DATABASES命令(從本地DB2服務器或通過遠程附件運行)應在其輸出中顯示數據庫。如果數據庫未激活,請讓您的DBA使用ACTIVATE DATABASE yourDBname顯式激活它。這將確保數據庫文件和內存結構保持可用,即使最後一個用戶從數據庫斷開連接。

使用GET MONITOR SWITCH來確保您的數據庫的所有顯示器開關都已啓用,否則您將錯過某些可能暴露的性能細節。追蹤與這些監視器開關相關的數據的額外開銷是最小的,而性能數據的值是顯着的。

如果數據庫始終處於活動狀態並且事情看起來很慢,那麼會有詳細的DB2跟蹤稱爲事件監視器,用於將遇到的所有內容記錄到文件,管道或DB2表中。語句事件監視器是我經常轉向分析SQL語句效率和UOW衛生的一個。我還喜歡用額外的命中記錄事件監視器記錄到表而不是文件,所以我可以使用SQL來搜索各種模式的數據。 db2evtbl實用程序可以很容易地定義所需的事件監視器並創建表來存儲其輸出。 SET EVENT MONITOR STATE命令是您如何啓動和停止您創建的事件監視器。

+0

謝謝,這些適用於iseries DB2嗎? – user271858 2010-02-25 12:33:34

0
  • 連接池
  • 緩存
  • 的DBA