• <option id="cacee"><noscript id="cacee"></noscript></option>
  • <table id="cacee"><noscript id="cacee"></noscript></table>
  • <td id="cacee"></td>
  • <option id="cacee"></option>
  • <table id="cacee"></table>
  • <option id="cacee"><option id="cacee"></option></option>
  • <table id="cacee"><source id="cacee"></source></table><td id="cacee"><rt id="cacee"></rt></td>
    <option id="cacee"><option id="cacee"></option></option>
     找回密碼
     立即注冊

    掃一掃,登錄網站

    首頁 百科 查看內容
    • 10991
    • 0
    • 分享到

    一文看懂迅雷鏈技術棧和架構設計思路

    2018-6-4 23:39

    來源: 區塊鏈風云榜

    同構多鏈框架的設計思路


    所謂同構多鏈框架,顧名思義就是有多條鏈,每條鏈上都運行相同的程序。不同用戶的請求會發到不同的鏈上進行處理。

    當 A、B、C、D同時發起請求,比如有 A->B,A->C,A->D , 同時有 B->C, C->D,D->E。A、B、C、D根據路由規則落到不同的鏈上,四條鏈可以并行進行處理,如果一條鏈每秒的打包請求并落區塊的速度是 1000,那么上千條鏈,就可以達到百萬 TPS。

    對于普通請求,消耗的鏈克 gas是固定的,這種鏈間的處理是相對容易的,而支持智能合約,需要一些額外的處理。因為要防止惡意的合約或者合約本身的 bug導致占用大量資源,所以需要根據合約執行情況扣除相應的鏈克 gas。

    消耗的鏈克 gas是需要從請求發起方的賬戶里扣除的,而真正執行合約的是在合約所在的另一條鏈,所以最終需要的具體數量,在發起請求方所在鏈入鏈這筆請求的時候尚未可知,這怎么辦呢?

    解決辦法是在發起方所在鏈扣除請求中傳入的 gasLimit值,也就是用戶指定的上限值,這個請求入塊后同步到合約所在鏈,合約執行后請求入塊能知道這筆請求真正扣掉的通證數量,再通過鏈間通信將鏈里面入塊的合約調用請求同步到發起方所在鏈,發起方確認合約鏈的區塊數據,并把多扣掉的通證退回給發起方。這些對賬戶余額的操作在鏈上都有相應的操作記錄寫入,方便對賬。

    版權申明:本內容來自于互聯網,屬第三方匯集推薦平臺。本文的版權歸原作者所有,文章言論不代表鏈門戶的觀點,鏈門戶不承擔任何法律責任。如有侵權請聯系QQ:3341927519進行反饋。
    相關新聞
    發表評論

    請先 注冊/登錄 后參與評論

      回頂部
    • <option id="cacee"><noscript id="cacee"></noscript></option>
    • <table id="cacee"><noscript id="cacee"></noscript></table>
    • <td id="cacee"></td>
    • <option id="cacee"></option>
    • <table id="cacee"></table>
    • <option id="cacee"><option id="cacee"></option></option>
    • <table id="cacee"><source id="cacee"></source></table><td id="cacee"><rt id="cacee"></rt></td>
      <option id="cacee"><option id="cacee"></option></option>
      妖精视频