我與Hibernate框架(無彈簧)的Java應用程序連接到MySQL數據庫,管理連接通過C3P0關於DB游泳池和connection.setReadOnly()方法
我嘗試配置我apllication從從數據庫讀取緩存的行爲並寫入到主數據庫,我有如下此鏈接在一定程度上Master/Slave load balance
比方說,如果應用程序已經得到了與池連接的會話,它需要執行一個只讀的方法,這樣
public someReadOnlyMethod()
{
Session session = (get session from current Thread)
//set read-only so that it read from slave db
session.connection().setReadOnly(true);
(...connect to db to do something...)
//set it back in case of this method is followed by write method so that it go to master db
session.connection().setReadOnly(false);
}
池是否創建一個新的連接來連接到數據庫2次進行只讀和寫入操作(如果是這樣會嚴重影響性能),還是足夠聰明地將操作交換到已經存在的只讀和可寫連接池?
thx您的建議。