weblogic使用 Pinned-To-Thread 屬性提高效能

datapeng發表於2016-01-12

使用 Pinned-To-Thread 屬性提高效能

    要將應用程式保留資料來源中資料庫連線耗費的時間縮到最短,以及避免執行緒爭用資料庫連線,可將 Pinned-To-Thread 屬性新增到資料來源的“連線屬性”列表中,然後將其值設定為 true。

    啟用Pinned-To-Thread 後,WebLogic Server 將在應用程式首次使用執行緒保留連線時將資料來源中的一個資料庫連線固定到此執行執行緒。應用程式使用完該連線並呼叫 connection.close()(此方法在其他情況下將把連線返回資料來源)時,WebLogic Server 將把該連線留給執行執行緒,不會將其返回資料來源。當應用程式隨後使用同一執行執行緒請求連線時,WebLogic Server 將提供該執行緒已保留的連線。多個執行緒嘗試同時保留一個連線時,資料來源中不會發生鎖定衝突,嘗試在數量有限的資料庫連線中保留同一連線的執行緒之間也沒有衝突。 
   注意: 在此版本中,Pinned-To-Thread 功能對多資料來源、Oracle RAC 和 IdentityPool 無效。如果出現連線故障,或連線標識不匹配,則這些功能依賴於將連線返回連線緩衝池後再重新將其獲取的能力。

    特別需要注意的是,採用這種方式,可能使資料庫產生很多inactive連線,影響資料庫的效能!

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29371470/viewspace-1975196/,如需轉載,請註明出處,否則將追究法律責任。

相關文章