zookeeper的事務性請求之後臺日誌分析
客戶端傳送事務性請求到zookeeper集群,集群中任何一台接收到,都會將該事務性請求**給leader,由leader通過原子廣播給其他伺服器進件事務持久化操作,超過半數以上的伺服器返回事務執行成功,則該事務請求操作完成後。自己在本地測試了下,發現日誌如下
1.leader節點
2021-02
-2515:
05:39,
007[myid:2]
- info [nioservercxn.factory:
0.0.0.0/
0.0.0.0:
2182
:nioservercnxnfactory@192
]- accepted socket connection from /
192.168
.1.1
:57027
2021-02
-2515:
05:39,
011[myid:2]
- info [nioservercxn.factory:
0.0.0.0/
0.0.0.0:
2182
:zookeeperserver@900
]- client attempting to establish new
session at /
192.168
.1.1
:57027
2021-02
-2515:
05:39,
012[myid:2]
- info [syncthread:
2:filetxnlog@199
]- creating new
log file: log.
500000001
2021-02
-2515:
05:39,
087[myid:2]
- info [commitprocessor:
2:zookeeperserver@645
]- established session 0x277d9b6eef60000 with negotiated timeout 40000
for client /
192.168
.1.1
:57027
2021-02
-2515:
05:39,
147[myid:2]
- info [
processthread
(sid:
2 cport:-1
)::preprequestprocessor@651
]- got user-level keeperexception when processing sessionid:
0x277d9b6eef60000 type:create cxid:
0x4 zxid:
0x500000003 txntype:
-1 reqpath:n/a error path:
/dubbo/com.liu.userservice/configurators error:keepererrorcode = nodeexists for
/dubbo/com.liu.userservice/configurators
服務提供者客戶端啟動,將服務註冊到註冊中心,與本地建立socket連線,建立新的session,sessionid為0x277d9b6eef60000 ,超時時間為40000ms(超過這個時間沒有與zookeeper互動,則斷開連線),並返回給客戶端如下:
服務註冊到註冊中心,是乙個事務請求,建立了事務日誌log.500000001,事務id:zxid:0x500000003,
2.檢視其它兩個zookeeper節點的日誌,都建立了事務日誌如下:
2021-02
-2515:
05:39,
013[myid:1]
- warn [quorumpeer[myid=1]
/0:0
:0:0
:0:0
:0:0
:2181
:follower@118
]- got zxid 0x500000001 expected 0x1
2021-02
-2515:
05:39,
014[myid:1]
- info [syncthread:
1:filetxnlog@199
]- creating new
log file: log.
500000001
2021-02
-2515:
05:39,
017[myid:3]
- warn [quorumpeer[myid=3]
/0:0
:0:0
:0:0
:0:0
:2183
:follower@118
]- got zxid 0x500000001 expected 0x1
2021-02
-2515:
05:39,
018[myid:3]
- info [syncthread:
3:filetxnlog@199
]- creating new
log file: log.
500000001
3.檢視各個zookeeper節點的事務日誌路徑version-2,.確定產生了事務日誌檔案:
事務性的特點
原子性 atomicity 原子性是指事務是乙個不可分割的工作單位,事務中的操作要麼都發生,要麼都不發生。一致性 consistency 事務前後資料的完整性必須保持一致。隔離性 isolation 事務的隔離性是多個使用者併發訪問資料庫時,資料庫為每乙個使用者開啟的事務,不能被其他事務的運算元據所...
事務性的特點
原子性 atomicity 原子性是指事務是乙個不可分割的工作單位,事務中的操作要麼都發生,要麼都不發生。一致性 consistency 事務前後資料的完整性必須保持一致。隔離性 isolation 事務的隔離性是多個使用者併發訪問資料庫時,資料庫為每乙個使用者開啟的事務,不能被其他事務的運算元據所...
前端事務性任務多次請求的問題
專案上線的時候,遇到乙個詭異的問題 預上線環境不能復現,生產環境必現。而預上線環境和生產環境最大的區別就在於 預上線是單點應用服務,生產環境則是集群部署。request excel data,command,function success stringbuffer temppath new str...