zookeeper之生成sessionId<十四>

在創建會話的請求中,獲取sessionId的方法是sessionTracker的createSession方法。在服務器啓動的時候,會初始化sessionTracker,同時會初始化基準sessionId,隨後在這個基準上遞增(文字不夠,截圖來湊)服務器

還不知道爲何要這麼作?session

 

long sessionId = sessionTracker.createSession(timeout);接口

在獲取sessionID這邊加了一個同步鎖,增長了nextSessionId後,對nextSessionId+1,事務

而後就是把id加入sessionWithTimeout和sessionById中。同步

最後作了一個touchSession操做,放入sessionSets中,而後接下去就到昨天的 事務處理,事務應用,會話響應啦it

SessionTracker接口中的主要方法 io

相關文章
相關標籤/搜索