Transactions
乙太坊傳播延遲
我有一個非常初級的問題。假設我有一個包含不同機器 IP 地址的列表,我想通過乙太坊區塊鏈共享它們,並假設隨著時間的推移列表非常大,與其他節點共享並添加到塊中需要多少時間? 無論列表大小如何,都需要 14 秒嗎?如果有任何參考資料,那就太好了。請幫忙。
這只是用於學習目的的人為範例。操作起來會很昂貴。
您將創建一個合約來保存狀態和更新功能。我已將訪問控制問題放在一邊,並檢查重複項以使範例保持簡短。
- 一旦部署交易被探勘,合約就會傳播。
- 一旦
appendIP("address")
發送到合約的交易被探勘,插入(附加,如實施)將傳播。pragma solidity 0.4.25; contract IPList { string[] public ipList; event LogNewIp(address sender, string ip); function appendIP(string ip) public { ipList.push(ip); emit LogNewIp(msg.sender, ip); } function getIPCount() public view returns(uint count) { return ipList.length; } }
重要的是採礦過程。該交易“燃燒”了大約 65,000 個氣體,這是包括儲存在內的計算量。交易包括出價,
gasPrice
即使用者願意為每單位天然氣支付的價格。gas
時間gasPrice
是交易的成本,以 ETH 為單位。為什麼這很重要?因為礦工優先考慮具有更高
gasPrice
. 相應地定價,該交易很可能在 15-30 秒內被納入。價格較低,可能暫時不會開採,或者根本不會開採。一旦被探勘,該交易就成為區塊鏈規範歷史的一部分,並將在幾秒鐘內為所有最新節點所知。
如果不清楚,交易將是某個區塊的一部分,因此所有趕上該區塊的節點都知道,這些節點將在短時間內成為大多數節點。
希望能幫助到你。