Mempool

為什麼塊大小沒有被交易填充?

  • November 11, 2019

由於礦工可以從一個區塊中的交易中獲得費用,因此礦工應該在一個區塊中打包盡可能多的交易。但是,我最近發現了一個相對較小的塊(blocknum:602297 ,其大小僅為134 kB

有關該塊的更多詳細資訊,請參見塊:602297

為什麼它不包含更多交易以賺取更多費用?

礦工從記憶體池中挑選交易,記憶體池是未確認交易的隊列。當等待的交易數量少於一個塊的容量時,該塊將不會被填滿。礦工可以自己創建更多交易,但這只有在他們想自己發送交易時才有用,否則他們只會為包含無用數據而付費。

那麼,為什麼有時等待確認的交易如此之少呢?比特幣網路中的流量似乎有每日和每週的周期。當歐洲的工作日開始時,它往往開始回升,而當美國西海岸下班回家時,它會放緩一點。週末的交通量往往較少。當然,這被比特幣的更大趨勢所覆蓋,因此例如在價格上漲期間需求將激增。

Jochen Hoenicke 的 Mempool Visualization 註釋顯示營業日的開始 過去 7 天的 Mempool 視覺化,來自 jochen-hoenicke.de

此外,區塊生產是機率性的。塊平均大約十分鐘以隨機間隔出現,但這意味著有時可能在一分鐘內有三個塊並且隊列被刷新,或者一個小時沒有塊並且隊列建立。

過去一年,UTXO 集從 5000 萬增長到近 6400 萬 通過statoshi.info過去一年的 UTXO 集大小

最後,網路參與者應確保隊列不會完全刷新。當對區塊空間的需求很少時,使用者可能會整合他們的小塊比特幣:未使用的交易輸出集在過去一年從 5000 萬增長到 6400 萬。在一個完美的世界裡,我們總是有一個積壓的合併交易,當沒有其他交易在等待時,我們可以仔細研究這些交易。

雖然礦工確實試圖最大化交易空間,但他們不能總是填滿一個區塊。

礦工通常從僅包含 coinbase 交易的區​​塊模板開始 - 僅此一項就可以為他們帶來區塊獎勵,目前為 12.5 BTC。任何超出“免費”資金的交易費用。

當區塊被快速連續開採時,礦工可能需要幾秒鐘到幾分鐘的時間來建構另一個包含多個交易的最大區塊。當礦工執行該計算時,他們會繼續在較小的塊模板上進行探勘,並在找到更好的交易列表時對其進行更新。如果他們碰巧在那個時間段內找到了一個有效的區塊,他們仍然會廣播它,以便他們獲得主要的區塊獎勵。

引用自:https://bitcoin.stackexchange.com/questions/91471