2016-07-22 164 views
1

我使用OrientDB 2.2.5作爲多線程Java Web應用程序的後端,我嘗試了許多不同的連接方法。每種方法似乎都有問題。OrientDB連接池

我基本上需要一些可以同時調用的東西來使用OrientDB數據庫,無論是靜態方法還是對象實例。

我試過各種方法,並有記錄鎖定或各種其他例外的問題。該文檔顯示了折舊連接池方法(ODatabaseDocumentPool),並且互聯網上的各種其他來源顯示了多種方式(ODatabaseDocumentTx,OPartitionedDatabasePool)。

請有人提供一個可重用的方法連接到實例(目前只是一個plocal),併發出一個基本的查詢。還請包括任何連接清理邏輯(我認爲這是導致我記錄被鎖定的問題,甚至在最後一次更新後幾秒鐘)。

任何幫助/指針將不勝感激。

回答

1

爲了用最小爲1的情況下,最多10個實例的可回收池工作:

OrientGraphFactory factory = new OrientGraphFactory("plocal:/temp/mydb").setupPool(1, 10); 

一旦工廠的配置,你可以得到圖實例開始工作。 OrientGraphFactory有兩種方法來檢索事務性和非事務性實例:

OrientGraph txGraph = factory.getTx(); 

OrientGraphNoTx noTxGraph = factory.getNoTx(); 

希望它有幫助。

0

如果您使用文檔API,OPartitionedDatabasePool是您選擇的池。請注意,這是由OrientGraphFactory內部使用的池實施。