2012-12-11 48 views
1

我目前有一個Java應用程序,每天更新一個neo4j數據庫。neo4j - 獨立服務器還是爲這種情況嵌入?

然後我有另一個應用程序,通過創建一個具有相同存儲路徑的嵌入式數據庫,使用遍歷來查詢數據庫。

我應該如何着手保持服務器運行,並在每次查詢java應用程序運行時將查詢指向正在運行的實例?我不確定如何在不每次創建嵌入式服務器實例的情況下執行此操作。

我可以保持我目前的做法,問題是每次用戶發出查詢請求時都需要加載數據庫,而且這很昂貴。

謝謝!

回答

0

不僅價格昂貴,而且如果我正確理解了您的應用程序概念,則可能存在潛在的鎖存儲錯誤。

如果您的更新應用程序正在數據庫中執行某些操作,並且因此嵌入式數據庫的實例正在運行,並且同時您的其他應用程序正試圖使嵌入式數據庫的實例執行查詢, '碰到一家鎖店。

我不知道你是否採取了任何預防措施來防止這種情況發生,或者如果你剛剛運氣好以至於這些行爲沒有同時發生,但我會研究它。

+0

我有一個tomcat上下文變量,其中包含索引到數據庫。我正試圖找出處理更新的最佳方法。我正在考慮在更新運行時簡單地關閉應用程序進行維護,創建一個新的數據庫,然後刪除舊的並替換爲新的,然後再次打開應用程序。創建一個全新的更新數據庫比通過每個節點檢查更改更容易。 – user1277546