Go-Ethereum
“成為全節點”與“成為同步”:它們是一樣的嗎?
當我們嘗試
sync
使用Parity
orgeth
時,是否意味著我們正在嘗試成為 afull node
?是否正確地說:
存在
sync
= 存在full node
= 保留整個區塊鏈?
乙太坊及其客戶知道幾種同步模式。
根據geth docs ,有“完整”、“輕”和“快速” 。
只有“完整”才能真正下載並驗證所有內容。
這篇文章解釋了它。
基本上,節點啟動得越快,檢索狀態所需的驗證就越少。
Parity 本身有一些操作實現。
Parity 是一個輕客戶端,這意味著預設情況下它不用作完整節點。
這表示
parity
有點對應geth --light
。而這兩者都意味著通過驗證較不深(或多或少)來重建狀態。
parity --warp
與性能相似geth --fast
,儘管對於 Parity 來說,這意味著客戶端從另一個完整節點中查找數據並簡單地信任它,而 Geth 將通過簡單地從塊而不是整個塊中提取雜湊來檢索狀態。這裡正在討論。在“warp-mode”中啟動 Parity 意味著目前狀態是從一些受信任的快照中讀取的:
https://wiki.parity.io/Getting-Synced.html
您可以在此處閱讀有關經紗的更多資訊!
每 5,000 個區塊,節點將對該區塊的狀態進行關鍵共識快照。任何節點都可以通過網路獲取這些快照,從而實現快速同步。
這可能有點令人困惑。Parity 中的一個參數表示 驗證的內容**,而另一個參數決定何時**驗證。
然後是配置
--mode
奇偶校驗同步的選項。這決定了您 PC 上的程序在什麼時間執行和同步--mode=[MODE] Set the operating mode. MODE can be one of: last - Uses the last-used mode, active if none; active - Parity continuously syncs the chain; passive - Parity syncs initially, then sleeps and wakes regularly to resync; dark - Parity syncs only when the JSON-RPC is active; offline - Parity doesn't sync. (default: last)