2014-03-13 27 views
0

我有一個用例,我想定期讀取zookeeper節點。有什麼辦法可以在zookeeper中異步執行嗎?Preiodically read zookeeper node

我讀了約exists(),但它只有在節點數據發生變化時纔回調。

+0

即使數據在上次讀取後沒有更改,爲什麼還要讀取?如果客戶對數據更改事件進行監視,則會通知它並始終具有最新數據。 –

+0

還有另一個應用程序(比如X)定期更新節點。如果應用程序(X)關閉,它將不會更新動物園管理員節點。我的應用程序(Y)必須檢查節點的時間戳,並且如果時間戳尚未更新一段時間,它將重新啓動應用程序(X),假定應用程序(X )已關閉。 由於沒有服務,這將使我不斷更新有關動物園管理員節點,我將不得不輪詢節點。 – zer0Id0l

回答

1

如果您對Spring使用Java,請使用帶註釋@Scheduled的方法創建一個組件。添加一個延遲,並在方法內部將代碼放在您讀取zNode的位置,並檢查其他應用程序是否存在。