Light-Clients
節點如何獲得最後一個塊?
當我從特定的全節點呼叫 web3.eth.blockNumber 時,它從哪裡獲得最後一個塊?
我知道全塊包含他從與其他全節點閒聊中獲得的鏈的一部分。
我猜該節點始終持有區塊鏈的一個版本,並且只檢查塊頭/最後一個塊,對嗎?
該過程如何與輕客戶端一起使用?
全節點不斷同步。當礦工開採一個區塊時,它會將其傳輸到網路。當你呼叫 web3.eth.getBlockNumber() 到一個全節點時,它已經知道它所知道的最新塊,所以它可以立即告訴你。
輕節點在這裡沒有任何不同。輕節點和全節點的區別在於輕節點只關心獲取塊頭。他們仍然不斷地聽所有新的塊並得到他們的標題。由於區塊號在標頭中,因此請求輕節點 web3.eth.getBlockNumber() 仍然是即時的,因為節點知道它擁有的最新區塊。