01交易是區塊鏈的基石
交易是區塊鏈的基石,我們每天都會接觸到各式交易,不論你是操作DeFi,還是轉賬購買NFT,或者只是單純的從交易所提現/充值,交易都是上述操作的基礎。
不過,鮮有人知曉交易的中轉站——內存池的重要性,由于大量教材為大家提供了“區塊鏈是一個不需要中介的交易賬本”這個概念,如果不深入了解區塊鏈的技術細節往往會忽略內存池,并導致在一些特殊時刻出現不必要的損失。
比特幣、以太坊、WisdomChain都有內存池設計,幾乎所有的區塊鏈項目都離不開內存池,那么究竟什么是內存池?內存池又在交易過程中扮演了什么角色呢?
02內存池是什么?
要了解內存池的概念,首先我們需要回顧交易的狀態。
BTC DeGods已在一個比特幣區塊內售罄,將根據交易達到內存池時間發送銘文:金色財經報道,Solana鏈上NFT項目DeGods在社交媒體發文宣布BTC DeGods已在一個比特幣區塊內售罄,該區塊經過審查并將根據確認的交易到達內存池的時間以先到先得的方式發送銘文。DeGods表示,目前已成功交易的用戶名單已發布,而未成功鑄造的人將會收到退款。DeGods此前宣布將于比特幣網絡開放500枚新系列NFT鑄造,每枚NFT鑄造價格為0.444枚BTC。[2023/3/19 13:13:20]
相信大家在操作以太坊,尤其是近期擁堵的以太坊時,如果設置了較低的手續費,那么交易將會被等待一段時間才會被礦工打包。
等待的這段時間交易將會儲存在收到這筆交易的礦工節點中,而礦工節點則會將這些等待被它打包的交易存放在“內存池”中。
埃隆·馬斯克:短期內存在“強大的通脹壓力”:10月26日消息,特斯拉首席執行官埃隆·馬斯克(Elon Musk)在最近的一份聲明中贊成了有關通脹的爭論。雖然馬斯克沒有做出長期預測,但他在回應Ark Invest首席執行官Cathie Wood關于美國貨幣流通速度下降的推特時稱,短期內存在“強大的通脹壓力”。上周,Twitter首席執行官Jack Dorsey在推特上警告稱,即將到來的惡性通貨膨脹將“改變一切”,引發激烈討論。(U.Today)[2021/10/26 20:58:02]
放在內存池中的交易,礦工一般會按照手續費價格的多少來進行排序,優先打包價格較高的交易,至于手續費比較少的交易自然就必須排隊了。
不過由于礦工每時每刻都會接收到其他節點發來的新交易,這些交易也會不斷的更新到內存池中,因此礦工也會在一定時間后重新排列交易池中的順序——換句話說,如果你的手續費太低,那么交易有可能一輩子都不會被打包。
動態 | Cosmos測試網升級部分節點內存不足,問題現已排查:近日,Cosmos節點B-Harvest聯合其他節點一同發起了Cosmos hub3網絡的升級測試。但今日在社區測試網中部分節點遭遇了意外的內存泄漏,導致gaiad被gaia 2.0.2隨機關閉。Cosmos區塊瀏覽器Forbole的聯合創始人kwunyeung表示:當他們測試從cosmoshub-2遷移至cosmoshub-3時,發現節點因為內存不足4G而感到恐慌。權益質押服務商pingpub創始人梁平表示,這是他們自己的問題,因為他們沒有足夠的閑置內存空間。當他們在總共4GB的服務器上運行gaiad時,只有1.6G的閑置空間。在升級至8GB的服務器后,就恢復正常運行了。梁平還表示,他們在原來這臺4GB的服務器上運行了幾個月本地測試網(gaiad 0.34.6~7)都沒有任何問題。新版本的軟件確實需要比舊版本更多的內存。梁平透露,這次測試部分節點出現內存不足的錯誤out of memory,開始大家懷疑是程序有問題。后來發現是新版本需要更大的內存。(真本聰)[2019/10/17]
以太坊和比特幣雖然采用了完全不同的結構,但他們的交易內存池設計都是大同小異的,或者說,所有的區塊鏈項目在內存池上的設計都大同小異,我們以WisdomChain的內存池作為例子:
金馬:EOS上內存租賃成本會是一個穩定的價格:EOS超級節點競選團隊EOS Asia 的金馬在《歐鏈·寧話區塊鏈》第二季的節目中稱 “EOS上內存租賃成本會是一個穩定的價格,因為通過多方博弈,隨著EOS的增長,用戶的增多,DApp開發公司的增多,最終帶寬CPU,以及RAM內存,會是一個穩定的價格。不會像外界所說的,EOS價格增長,DApp運營成本或者資源成本就更貴。在我看來會是一個穩定的價格,跟現在互聯網的云計算云服務器收費方式相同,價格是穩定的。”[2018/6/22]
上述各個參數定義了WisdomChain中內存池的各個特點,我們挑選其中最重要的幾點進行解釋:
1Pending
pending代表著尚未被礦工打包的交易,這些交易已經經過了初次校驗并等待被礦工打包
2Queued
queued代表著初步被驗證過的交易,但這些交易的優先級比pending低,處于”等待進入pending“隊列的狀態。需要注意的是pending和queued隊列也會按照Nonce隨機數來進行排序。
3過期時間
過期時間。交易如果超過了一段時間將會從內存池中清除,用戶需要重新向網絡廣播交易才能讓交易被放入到礦工的內存池中
4手續費
手續費,顧名思義,避免大量無意義的交易填塞網絡導致擁堵。
5最大事務數
最大事務數。確保礦工的內存池不會儲存過多交易,導致節點宕機。
不論比特幣、以太坊,內存池的設計都離不開”交易隊列“,”手續費門檻“,”內存池上限“三大概念,WisdomChain中也是如此。
03為什么需要內存池?
試想一下,如果沒有內存池,區塊鏈會發生什么?
雖然作為點對點交易的媒介,區塊鏈看起來是一個用戶同另一個用戶直接交易,就像線下一手交錢一手交貨一樣,加入交易池作為中介媒介似乎是徒增摩擦成本。但實際上,內存池的存在不僅沒有對網絡造成負擔,甚至還是網絡減負的重要手段。
如果沒有內存池,首先區塊鏈就喪失了對粉塵攻擊的抵抗性。所謂區塊鏈上的粉塵攻擊,指的是大量毫無意義的交易填充了整個區塊網絡,而交易驗證是需要花費時間和算力的,如果用戶和礦工節點被大量的粉塵交易所填塞,那么他們將無法正常的驗證并打包本應當正常的交易。
甚至如果礦工節點不設上限地接收粉塵交易,交易將會直接填滿礦工節點的內存導致宕機。內存池的存在,通過最大事務數和手續費門檻,確保無價值的粉塵攻擊不會讓網絡陷入擁堵狀態。
交易額低數量大
其次,缺乏內存池,網絡激勵機制將會受到挑戰。內存池設置了按照隨機數手續費進行排列的交易隊列,為的是讓礦工盡可能以網絡、用戶還有礦工個人所期望的方式打包交易——即優先高手續費的交易。
如果缺乏內存池,雖然從利己角度礦工依然會選擇較高手續費的交易進行打包,但惡意礦工可以通過以低手續費門檻吸引大量的交易并孤立其他礦工,如果交易過多的聚集在某個礦工控制的節點下,發動雙花攻擊的難度也會有所下降。
另一方面,如果礦工對交易不按照隨機數進行排序,那么事務/合約的執行也會存在問題。如果一個礦工節點收到了來自一個用戶的多筆交易,在內存池的輔助下交易將會按照隨機數大小進行排列,本質上也符合交易的”理想發起時間“。
缺乏內存池,如果在網絡存在延遲的環境下,用戶發起的交易并不會按照實際發送時間廣播到礦工手中,礦工如果單純按照接收時間來執行某一用戶的多筆交易,那么對于事務/合約這種嚴格限定交易先后順序的設計,錯序交易會讓用戶無法正常的調用合約。
04?內存是交易的驛站
內存池是交易的驛站,或者說港口。所有的交易都需要在內存池進行校驗、打包、排序,之后才會經由礦工發送到區塊鏈網絡中。如果忽視內存池設計,或者忽視內存池的存在,在市場劇烈波動或者網絡環境不穩定的情況下,是會發生類似3.12MakerDAO0價格ETH拍賣烏龍事件的。
本文來自WisdomChain公鏈社區
Tags:區塊鏈COSOSMO比特幣ruff幣區塊鏈最新消息Receive Access EcosystemOSMO幣比特幣市值占比與牛熊關系
親愛的CoinW用戶: CoinW將于2月8日12:00開啟元宵福利活動。活動期間,交易減半幣或OTC購買USDT即有機會獲得最高120%交易返利及瓜分1888USDT獎池,屆時更有最低6折手續.
1900/1/1 0:00:00親愛的幣贏CoinW用戶:根據ETH(Ethereum)官方計劃,ETH將于區塊高度達到9,200,000時進行MuirGlacier硬分叉升級.
1900/1/1 0:00:00親愛的CoinW用戶: CoinW將于7月25日22:00開啟YFI6折搶購,平臺所有完成實名認證且持倉≥0.01YFI的用戶,提前購買USDT即可參與本次搶購.
1900/1/1 0:00:00比特幣,一個讓股神巴菲特看走眼的投資領域,挖礦,一個百分之九十九都除了名稱,啥也不懂的行業。引得無數人趨之若鶩.
1900/1/1 0:00:00據官網公告,ZT創新板即將上線DBBC,于2020年9月16日16:00開放充值服務;2020年9月17日15:00開啟DBBC/USDT交易對;2020年9月17日16:00開放提幣業務.
1900/1/1 0:00:00親愛的CoinW用戶: CoinW將于8月1日19:00開啟幣贏跑腿計劃,該計劃是幣贏針對近期熱門DeFi項目推出的一攬子代購買服務.
1900/1/1 0:00:00