加密貨幣交易所 加密貨幣交易所
Ctrl+D 加密貨幣交易所
ads
首頁 > Ethereum > Info

一文讀懂以太坊交易可能經歷的8個狀態_APP:DAP

Author:

Time:1900/1/1 0:00:00

編者按:本文來自區塊鏈大本營,作者:dfuse,Odaily星球日報經授權轉載。在本文中,我們將重點介紹以太坊上復雜的交易生命周期;開發者在這些情況下嘗試讓dapp提供理想的用戶體驗的挑戰;以及dfuse是如何幫助突破這些挑戰的。每當一筆交易提交到以太坊網絡上時,它會經歷一系列相當復雜的狀態,而并非每個狀態轉換都是向前的——交易可能回滾到較早的狀態、可能被另一個交易替換、還可能完全分叉。在dapp中跟蹤交易的進程并為用戶提供良好的體驗是具有挑戰性的。如今,許多基于以太坊的dapp都可以提供吸引人但還是相對靜態的用戶體驗:應用能顯示某個時間點上的交易狀態,但必須通過刷新才能得到信息的更新。市面上有相對更動態的接口,但提供的數據粒度還是不夠細,或者/同時以高網絡流量為代價,在其底層區塊鏈節點上施加高負載。接下來我們討論下造成這種情況的原因,以及如何以高效利用網絡和服務器的方式、細粒度的交易狀態更新在dapp中提供符合現代標準的、流暢的用戶體驗。當今的Dapp接口

馬斯克:推特員工規模約為原來的20%:4月18日消息,馬斯克表示推特的員工規模約為原來的20%。(金十)[2023/4/18 14:10:11]

每個dapp都需要向用戶顯示正在執行的交易的區塊鏈底層信息——無論是Ether轉賬、代幣轉賬還是智能合約調用,而當下的許多dapp的界面顯示這些信息的時候顯示的是區塊鏈在單個時間點上的狀態。用戶在交易過程中經常需要更新信息,因此dapp會在界面上放一個“刷新”按鍵,或者用戶需要直接點擊瀏覽器的刷新按鈕來獲取更新。有些用戶體驗更成熟的dapp會向用戶顯示交易的動態更新。它們會在后臺輪詢AJAX請求,重復檢查其以太坊節點是否有更新,然后將更新發布到前端。這么做是非常復雜的,因為dapp必須進行大量API調用,查詢許多不同的數據源,從而才能從頭到尾的跟蹤交易的生命周期。這種處理方式會有弊端:要么交易的更新不頻繁、信息粒度大,導致用戶想去重復點擊“刷新”而去更快地獲取更新;或者dapp必須高頻輪詢區塊鏈,從而產生大量網絡流量,在底層區塊鏈節點上施加高負載。為什么不使用基于鏈上事件的接口?

Binance全倉杠桿新增MC、XVS:4月17日消息,Binance 全倉杠桿新增 MC、XVS 資產,新增全倉杠桿交易對:MC/USDT、XVS/USDT。[2023/4/17 14:08:44]

對于dapp開發人員,做靜態頁面或輪詢一直是僅可用的兩個選項,這反映了以太坊節點提供的API的性質。如果有一個基于鏈上事件的接口,可以接收推送到鏈上的交易狀態更新并實時反饋用戶,dapp才能提供更好的用戶體驗——而標準的以太坊節點并不提供豐富的實時交易數據。以太坊節點確實提供了鏈上事件的流讀取功能,但功能有限,只能通過使用以太坊的JSON-RPC接口的PUB/SUB功能才可用。PUB/SUB接口允許dapp接收一些事件類型的通知:newHeads——每次新的區塊header附加到鏈上logs——根據指定的條件過濾匹配包含在新導入的區塊中的日志newPendingTransactions——進入待處理狀態并被節點中可用密鑰簽名的所有交易的哈希syncing——指示節點何時開始或停止同步根據這些事件類型獲取信息很受限,dapp無法通過它們跟蹤交易的完整生命周期。以太坊交易生命周期

NFT平臺OneOf收購區塊鏈獎勵公司Tap Network:金色財經報道,NFT平臺OneOf收購了區塊鏈獎勵工具Tap Network,以幫助公司在Web3中與其消費者建立聯系。OneOf將推出One Platform,這是一個turnkey選項,適用于希望擴展到Web3的公司,結合了電子商務、數據和忠誠度計劃的元素。

Tap Network成立于2018年,允許消費者用忠誠度積分兌換加密貨幣,已與互聯網瀏覽器Brave、拼車公司Uber、娛樂公司華納音樂集團等公司建立了合作關系。[2023/4/4 13:44:35]

以太坊交易是有復雜的生命周期的。每個交易都會經過多個的state,在整個過程中經歷各種state的變更,可能前進也可能回滾。交易狀態

以太坊交易從提交上鏈到入塊,它會經歷如下的一系列狀態:UNKNOWN:一個未被網絡檢測到或未被處理的交易被定義為處于UNKOWN狀態。PENDING:交易在等待礦工揀選和處理,位于我們所稱的mempool中。礦工通常會首先選擇gas價格較高的交易,因此gas價格較低的交易可能會長期處于PENDING狀態。Gas價格最低的交易可能永遠都不會被選中,那就會導致它們無限期地處于PENDING狀態。IN_BLOCK:當礦工成功選擇交易并將其處理進入區塊,交易將進入IN_BLOCK狀態。如果交易進入IN_BLOCK狀態,但它所在的區塊分叉了,則交易可能回到PENDING狀態。REPLACED:在以下兩種情況下,交易可以從PENDING狀態變為REPLACED狀態:另一筆來自同一發送者且有相同nonce的交易進入了IN_BLOCK狀態,或另一筆來自同一發送者且有相同nonce但gas價格高出12%的另一筆交易進入了PENDING狀態下圖顯示了這些狀態以及它們之間的過渡。

數據:The Sandbox NFT近24小時交易額增幅超400%:金色財經報道,OpenSea數據顯示,The Sandbox NFT近24小時交易額為195 ETH,24小時交易額增漲幅度為435%,交易額排名位列OpenSea第8。[2022/8/20 12:37:35]

States轉換

如上圖所示,狀態之間的轉換也是有名稱定義的。POOLED:處于UNKOWN狀態的交易進入等待礦工選擇的交易池,被稱為POOLED并進入PENDING狀態。處于REPLACED狀態的交易,如果替換條件不再成立的低gas價格的交易被分叉,而替代它且具有相同nonce和發送者的交易仍在網絡上游動),則也有可能再次變為POOLED狀態。MINED:被挖礦的交易是由礦工處理過的交易,這過程會創建一個區塊。一旦被挖,交易就被算做處于IN_BLOCK狀態。由于以太坊網絡的點對點性質,從一個指定節點的角度監測,交易可以從UNKNOWN狀態直接進入到IN_BLOCK狀態,無需明顯地通過PENDING狀態。出于相同的原因,從一個指定節點的角度監測,交易也可以不通過PENDING狀態而直接從REPLACED狀態轉換為IN_BLOCK狀態。REPLACED:從PENDING狀態進入到REPLACED狀態的交易也被稱為REPLACED。請參見文中交易狀態中列出的REPLACED狀態。FORKED:當已被挖的交易處于被網絡撤消的區塊中時,就是產生了被分叉的交易。那個區塊內的所有交易將接連被分叉,從IN_BLOCK狀態轉回到PENDING狀態。CONFIRMED:處于IN_BLOCK狀態的交易會在每次它后續的子區塊被挖時而被確認。如上所述,以太坊上的交易的生命周期是非常復雜的,這使得dapp很難去準確的跟蹤它并向用戶提供無縫式、流暢的更新。毫不費力地跟蹤交易狀態

納斯達克上市礦企 SAI.TECH 已取消在哈薩克斯坦的第二階段電力供應合作計劃:8月3日消息,納斯達克上市礦企 SAI.TECH 已經取消了在哈薩克斯坦的第二階段電力供應合作計劃,此前 5 月其收到了電力合作伙伴和托管客戶對在哈薩克斯坦開展業務的運營穩定性和成本不確定性的擔憂,故挖礦運營工作已經推遲。[2022/8/3 2:57:24]

dfuse平臺為提供了一個豐富的、能夠串流監聽的接口,該接口支持實時詳細跟蹤以太坊交易的生命周期。dfuse以太坊交易狀態跟蹤器API使開發人員能夠提交以太坊交易,然后在同一數據通道上即刻獲取精細的狀態更新,跟隨交易在其整個生命周期中的進展。使用GraphQL,您可以實時監聽指定類型交易的變化,同時可以精確指定每次交易發生變化時您想收到的數據。dfuse平臺處理了跟蹤交易這項工作的復雜性,并會在事件發生時實時傳輸給dapp。這樣一來,您無需撰寫和運行復雜的后臺邏輯和重復進行輪詢,也不會浪費帶寬和多次運行同樣的查詢。簡單地監聽您所需的更新,然后在界面中把這些更新反饋給用戶。下面的動圖展示的是一個經歷了這種復雜生命周期的交易——它經歷了八個狀態轉換,最后才被包含在區塊中并得到確認。

如果沒有使用dfuse,dapp則必須一次次的訪問區塊鏈以捕獲交易經歷的所有轉換再更新給用戶,并且后端代碼需要去準備好應對每個狀態轉換。使用dfuse,dapp僅需要通過單個連接獲取串流更新,dfuse會為您跟蹤交易經歷的各種曲變化,直到它的命運被最終確定。為先進的Dapp提供的現代化平臺

LifecycleAPI只是dfuse平臺的重要的一小部分。dfuse為dapp提供了完整的現代化基礎架構層,即:快速,可擴展,提供對區塊鏈事件的高度精細的串流監聽,支持主動的Webhook形式的回調,具有業內最高的可靠性。

Tags:APPDAPPDAP以太坊eSwappingGGDApp區塊鏈dapp開發框架以太坊交易幣怎么交易

Ethereum
隨著比特幣價格跌破5000美元,加密貨幣市場繼續崩盤_比特幣:COIN

編者按:本文來自Cointelegraph中文,作者:HorusHughes,Odaily星球日報經授權轉載.

1900/1/1 0:00:00
行情分析:大盤受均線壓制,短期震蕩偏空_BTC:區塊鏈

本文來自:哈希派,作者:哈希派分析師團隊,星球日報經授權轉發。金色財經合約行情分析 | BTC在12000美元下方窄幅盤整:據火幣BTC永續合約行情顯示,截至今日18:00(GMT+8),BTC.

1900/1/1 0:00:00
股市、幣市、黃金石油,哪個才是價值洼地?_比特幣:數字貨幣

今天一早全球市場便又爆出一個黑天鵝:OPEC和俄羅斯就石油減產的談判破裂。這就直接導致沙特一不做二不休采取了殺敵一千自損八百的方法,干脆降價傾銷石油搶占原油市場.

1900/1/1 0:00:00
Deribit Insights:關于預測市場的解讀_AND:Dog Landing On The Moon

編者按:本文來自加密谷Live,作者:Hasu,翻譯:Lisa,Odaily星球日報經授權轉載。市場是人們可以相互交換商品和服務的場所.

1900/1/1 0:00:00
STEEM暴漲60%,孫宇晨要被老外割韭菜了?_STE:STEAMX價格

編者按:本文來自中本小蔥,Odaily星球日報經授權發布。Steem社區與孫宇晨的博弈似乎正在發生逆轉.

1900/1/1 0:00:00
印度監管松綁將為比特幣等帶來巨大利好?_加密貨幣:CokeFinance

編者按:本文來自吳說區塊鏈,Odaily星球日報經授權轉載。4日,印度最高法院推翻了中央銀行對該國實行的為期兩年的加密貨幣交易禁令.

1900/1/1 0:00:00
ads