2011-02-01 59 views
4

我們在AIX上的Tomcat WebServer內部運行J2EE應用程序。我應該使用哪種JDBC驅動程序類型來訪問Oracle數據庫?

我們需要訪問Oracle數據庫的一些視圖和存儲過程。這個oracle數據庫不是我們的應用程序所基於的,而是一個我們必須與之通信的外部系統。

據我現在可以告訴我們,我們將在高負載下每分鐘獲得1000個SELECT,每小時存儲一些存儲過程調用(如果有的話)。

在這種情況下,哪種JDBC驅動程序類型最適合使用?

據我所知,類型4似乎是要走的路,但我一直無法找到甲骨文或其他可靠來源的明確聲明。

回答

6

去決定自己的第4類(「瘦」)驅動程序是Oracle推薦的驅動程序。

當您需要RAC的高級功能(如透明應用程序故障轉移(TAF))時,使用OCI(「厚」)驅動程序的唯一原因是。對於其他的一切,建議使用薄驅動器。

見JDBC開發人員指南詳細信息:
http://download.oracle.com/docs/cd/B28359_01/java.111/b31224/overvw.htm#BABCHIGI

最重要的一句話大概是:

在一般情況下,除非你需要特定OCI的功能,如對於非支持TCP/IP網絡,請使用JDBC Thin驅動程序。

+0

感謝您的回答!你可能會發佈一個鏈接,或者讓我向正確的方向推薦Oracle的推薦嗎?因爲說實話,如果不是我的客戶對我的客戶持懷疑態度,所以我需要一些東西來表明我已經對Type 4有所瞭解。 – Maximilian 2011-02-01 15:03:20

1

4類似乎是要走的路,但你可以通過正反/利弊listed here.

3

從我的經驗,我會建議使用薄驅動程序。但有3種情況我會建議OCI:

  1. DB和JVM運行你的程序在同一個主機上。在這種情況下,OCI將省略TCP/IP層並且通信可能更快
  2. 由於使用了完整客戶端,因此只需要Oracle SID連接到數據庫。您不需要完整的數據庫網址。這在dev/test/prod環境中的配置中可能很有用。
  3. 你正在經常調用Stored Procedures(我的意思是!)。
相關問題