2016-05-05 69 views
0

我正在使用Neo4j進行流監控應用程序。我的流非常輕,每秒8到10個事務。Neo4j中的Multithread Upsert

當我在Neo4j中保存我的事務時,只要他們到達,有多個線程我有一個死鎖錯誤,並且一些節點和關係不會保存。

是否有任何一種解決方案,在配置或代碼中,我可以用來解決這類問題?

在此先感謝

回答

1

這裏是如何避免和處理死鎖一些基本信息。

  1. 您必須以避免死鎖的方式編寫代碼或Cypher查詢。
  2. 完全防止死鎖可能是不可能的,但你絕對可以使它們不太可能。
  3. 當您得到死鎖狀態代碼"Neo.TransientError.Transaction.DeadlockDetected"(或實際上,任何status code"Neo.TransientError"開頭),您應該稍後重試(理想情況下在隨機間隔後)。