国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

深入淺出FISCO BCOS:區(qū)塊鏈底層平臺(tái)

這篇具有很好參考價(jià)值的文章主要介紹了深入淺出FISCO BCOS:區(qū)塊鏈底層平臺(tái)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

?深入淺出FISCO BCOS:區(qū)塊鏈底層平臺(tái),區(qū)塊鏈技術(shù)學(xué)習(xí)指南:從0入門到入魔,# FISCO BCOS,區(qū)塊鏈,FISCO BCOS

?蘇澤

大家好 這里是蘇澤 一個(gè)鐘愛區(qū)塊鏈技術(shù)的后端開發(fā)者

本篇專欄?←持續(xù)記錄本人自學(xué)兩年走過無數(shù)彎路的智能合約學(xué)習(xí)筆記和經(jīng)驗(yàn)總結(jié) 如果喜歡拜托三連支持~


我前面有補(bǔ)充相關(guān)的區(qū)塊鏈的知識(shí) 如果沒有了解的話 可能部分概念或名詞會(huì)不懂哦 建議先了解一波再來看~

目錄

我前面有補(bǔ)充相關(guān)的區(qū)塊鏈的知識(shí) 如果沒有了解的話 可能部分概念或名詞會(huì)不懂哦 建議先了解一波再來看~

FISCO BCOS是什么?

架構(gòu)與設(shè)計(jì)

流程

發(fā)包

收包

接口層

調(diào)度層

模塊1:共識(shí)(Consensus)模塊

?編輯

模塊2:同步(Sync)模塊

如何啟動(dòng)!?

很簡(jiǎn)單! 一共就兩步


FISCO BCOS是什么?

FISCO BCOS是一個(gè)金融級(jí)、國(guó)產(chǎn)安全可控的區(qū)塊鏈底層平臺(tái),由深圳市金融區(qū)塊鏈發(fā)展促進(jìn)會(huì)(金鏈盟)開源工作組牽頭研發(fā)。作為最早開源的國(guó)產(chǎn)聯(lián)盟鏈底層平臺(tái)之一,F(xiàn)ISCO BCOS于2017年面向全球開源

架構(gòu)與設(shè)計(jì)

深入淺出FISCO BCOS:區(qū)塊鏈底層平臺(tái),區(qū)塊鏈技術(shù)學(xué)習(xí)指南:從0入門到入魔,# FISCO BCOS,區(qū)塊鏈,FISCO BCOS

大概就是分為那么幾個(gè)層 往深了講可以講幾天幾夜 我就挑 作為一個(gè)應(yīng)用級(jí)別的開發(fā)者哈需要關(guān)注的大概就是那么幾個(gè)地方:

流程

發(fā)包

以node0的第一組向node1的第一組發(fā)送消息packetA為例:

  1. group1將消息packetA傳遞到網(wǎng)絡(luò)層。

  2. 網(wǎng)絡(luò)層模塊對(duì)packetA進(jìn)行編碼,將本群組ID添加到packetA的包頭,形成新的數(shù)據(jù)包{groupID(1) + packetA}。

  3. 網(wǎng)絡(luò)層訪問賬本白名單,判斷node0是否是group1的節(jié)點(diǎn)。如果node0不是group1的節(jié)點(diǎn),網(wǎng)絡(luò)層會(huì)拒絕發(fā)送數(shù)據(jù)包。但如果node0是group1的節(jié)點(diǎn),網(wǎng)絡(luò)層會(huì)將編碼后的數(shù)據(jù)包發(fā)送給目標(biāo)節(jié)點(diǎn)node1。

收包

當(dāng)node1接收到來自node0的數(shù)據(jù)包{groupID(1) + packetA}時(shí):

  1. 網(wǎng)絡(luò)層會(huì)查詢賬本白名單,檢查源節(jié)點(diǎn)node0是否是group1的成員。如果node0不是group1的成員,網(wǎng)絡(luò)層會(huì)拒絕該數(shù)據(jù)包;如果node0是group1的成員,網(wǎng)絡(luò)層會(huì)將數(shù)據(jù)包傳遞給解碼模塊。

  2. 解碼模塊會(huì)從數(shù)據(jù)包中提取出group ID為1和數(shù)據(jù)包packetA,并將數(shù)據(jù)包packetA發(fā)送到group1。

接口層

讓我們以一個(gè)簡(jiǎn)單的比喻來解釋接口層由交易池(TxPool)、區(qū)塊鏈(BlockChain)和區(qū)塊執(zhí)行器(BlockVerifier)三個(gè)模塊組成的含義:

假設(shè)你是一個(gè)公司的項(xiàng)目經(jīng)理,負(fù)責(zé)處理公司內(nèi)部的各種任務(wù)和請(qǐng)求。在這個(gè)比喻中,你就是調(diào)度層,而接口層由三個(gè)模塊組成。

  1. 交易池(TxPool):交易池就像你的收件箱,它接收來自公司員工或其他部門的新任務(wù)和請(qǐng)求。員工們將任務(wù)發(fā)送到你的收件箱中,而你會(huì)將這些任務(wù)提供給相關(guān)的團(tuán)隊(duì)去處理。類似地,交易池接收來自客戶端或其他節(jié)點(diǎn)的新交易,并將這些交易提供給共識(shí)模塊進(jìn)行打包處理。同時(shí),同步模塊也可以從交易池中獲取新交易進(jìn)行廣播,就像你將任務(wù)分發(fā)給相關(guān)團(tuán)隊(duì)一樣。

  2. 區(qū)塊鏈(BlockChain):區(qū)塊鏈就像你的公司檔案室,它保存著所有任務(wù)的歷史記錄。當(dāng)你需要查看過去某個(gè)時(shí)間點(diǎn)的任務(wù)或了解任務(wù)執(zhí)行結(jié)果時(shí),你可以向檔案室查詢相關(guān)信息。類似地,區(qū)塊鏈模塊是你訪問底層存儲(chǔ)和執(zhí)行模塊的唯一入口。你可以通過區(qū)塊鏈模塊提交新的區(qū)塊和區(qū)塊執(zhí)行結(jié)果,查詢歷史區(qū)塊等信息。

    此外,RPC模塊可以通過區(qū)塊鏈模塊獲取區(qū)塊、塊高以及交易執(zhí)行結(jié)果等信息,就像你向檔案室查詢?nèi)蝿?wù)歷史記錄一樣。

  3. 區(qū)塊執(zhí)行器(BlockVerifier):區(qū)塊執(zhí)行器就像你的執(zhí)行團(tuán)隊(duì),負(fù)責(zé)實(shí)際執(zhí)行任務(wù)。當(dāng)你將任務(wù)分配給執(zhí)行團(tuán)隊(duì)時(shí),他們會(huì)按照任務(wù)要求進(jìn)行操作,并將執(zhí)行結(jié)果反饋給你。類似地,區(qū)塊執(zhí)行器與調(diào)度層進(jìn)行交互,負(fù)責(zé)執(zhí)行調(diào)度層傳入的區(qū)塊,并將區(qū)塊執(zhí)行結(jié)果返回給調(diào)度層。它是核心層與調(diào)度層之間的重要組件,用于驗(yàn)證和執(zhí)行區(qū)塊中的交易邏輯,就像你的執(zhí)行團(tuán)隊(duì)負(fù)責(zé)執(zhí)行任務(wù)并將結(jié)果反饋給你一樣。

調(diào)度層

模塊1:共識(shí)(Consensus)模塊

共識(shí)模塊的作用就像是一群人一起決定做什么事情。假設(shè)有一個(gè)團(tuán)隊(duì),他們需要決定在周末去哪里旅行。每個(gè)人都提出了自己的建議,然后大家一起討論并達(dá)成共識(shí)。共識(shí)模塊就像是團(tuán)隊(duì)成員,它主要負(fù)責(zé)執(zhí)行客戶端提交的交易,并確保每個(gè)人對(duì)交易執(zhí)行結(jié)果的認(rèn)可。

在共識(shí)模塊中,有兩個(gè)重要的部分:打包(Sealer)線程和共識(shí)(Engine)線程。打包線程負(fù)責(zé)從交易池中獲取還沒有被執(zhí)行的交易,并將這些交易打包成一個(gè)區(qū)塊。而共識(shí)線程則負(fù)責(zé)對(duì)區(qū)塊執(zhí)行結(jié)果進(jìn)行共識(shí),確保大家都達(dá)成一致意見。目前,常用的共識(shí)算法有PBFT和Raft。

共識(shí)模塊的工作流程如下:

  1. 客戶端提交的交易會(huì)先緩存到交易池(就像是大家提出的旅行建議被放在一個(gè)池子里)。

  2. 當(dāng)有新的交易進(jìn)入交易池時(shí),打包線程會(huì)被喚醒。打包線程會(huì)根據(jù)當(dāng)前最高的區(qū)塊,從交易池中獲取最新的交易,然后打包成一個(gè)新的區(qū)塊。

  3. 打包線程將新的區(qū)塊傳遞給共識(shí)線程,供共識(shí)過程使用。

  4. 共識(shí)線程收到新的區(qū)塊后,啟動(dòng)共識(shí)流程。在共識(shí)過程中,會(huì)調(diào)用區(qū)塊執(zhí)行器執(zhí)行區(qū)塊中的每一筆交易,并確保大家對(duì)執(zhí)行結(jié)果達(dá)成一致。

  5. 如果共識(shí)成功,就會(huì)調(diào)用區(qū)塊鏈模塊將新的區(qū)塊和區(qū)塊執(zhí)行結(jié)果提交到底層數(shù)據(jù)庫(kù)。

  6. 當(dāng)新的區(qū)塊成功上鏈后,交易池會(huì)刪除已經(jīng)被打包進(jìn)區(qū)塊的交易,并將交易執(zhí)行結(jié)果發(fā)送給客戶端。

深入淺出FISCO BCOS:區(qū)塊鏈底層平臺(tái),區(qū)塊鏈技術(shù)學(xué)習(xí)指南:從0入門到入魔,# FISCO BCOS,區(qū)塊鏈,FISCO BCOS

模塊2:同步(Sync)模塊

同步模塊的目標(biāo)是確保每個(gè)團(tuán)隊(duì)成員都擁有完整的信息。假設(shè)有一個(gè)團(tuán)隊(duì),其中的成員分布在不同的地方。為了保持大家的信息一致,每個(gè)人會(huì)定期向其他人匯報(bào)自己的進(jìn)展。同步模塊就像是團(tuán)隊(duì)成員之間的信息傳遞通道,它主要負(fù)責(zé)交易和區(qū)塊的同步。

同步模塊包括交易同步和區(qū)塊同步。

交易同步的過程如下:

  1. 當(dāng)客戶端向特定團(tuán)隊(duì)的交易池提交新的交易時(shí),交易同步線程會(huì)被喚醒。這個(gè)線程會(huì)將新的交易廣播給其他團(tuán)隊(duì)的節(jié)點(diǎn),以確保每個(gè)團(tuán)隊(duì)都有完整的交易信息。

  2. 假設(shè)客戶端將交易A發(fā)送到團(tuán)隊(duì)1,將交易B發(fā)送到團(tuán)隊(duì)2。交易同步線程會(huì)將交易A廣播給所有團(tuán)隊(duì)的節(jié)點(diǎn),而將交易B廣播給所有團(tuán)隊(duì)的節(jié)點(diǎn)。

深入淺出FISCO BCOS:區(qū)塊鏈底層平臺(tái),區(qū)塊鏈技術(shù)學(xué)習(xí)指南:從0入門到入魔,# FISCO BCOS,區(qū)塊鏈,FISCO BCOS

區(qū)塊同步的過程如下:

  1. 節(jié)點(diǎn)0、節(jié)點(diǎn)1和節(jié)點(diǎn)2的區(qū)塊同步線程會(huì)定期廣播最新區(qū)塊的高度信息。

  2. 當(dāng)節(jié)點(diǎn)1收到節(jié)點(diǎn)0和節(jié)點(diǎn)2的最新區(qū)塊高度后,發(fā)現(xiàn)自己的區(qū)塊高度是3,低于節(jié)點(diǎn)0和節(jié)點(diǎn)2的最新區(qū)塊高度6。

  3. 為了保持負(fù)載均衡,節(jié)點(diǎn)1向節(jié)點(diǎn)2請(qǐng)求第4個(gè)區(qū)塊,并向節(jié)點(diǎn)0請(qǐng)求第5和第6個(gè)區(qū)塊。

  4. 節(jié)點(diǎn)0和節(jié)點(diǎn)2接收到節(jié)點(diǎn)1的區(qū)塊請(qǐng)求后,分別將第5和6個(gè)區(qū)塊返回給節(jié)點(diǎn)1,節(jié)點(diǎn)2還返回第4個(gè)區(qū)塊。

  5. 節(jié)點(diǎn)1按照區(qū)塊的順序執(zhí)行第4、5和6個(gè)區(qū)塊,并將最新的區(qū)塊按順序提交到底層存儲(chǔ)。這樣,節(jié)點(diǎn)1就與其他節(jié)點(diǎn)保持了區(qū)塊的同步。

深入淺出FISCO BCOS:區(qū)塊鏈底層平臺(tái),區(qū)塊鏈技術(shù)學(xué)習(xí)指南:從0入門到入魔,# FISCO BCOS,區(qū)塊鏈,FISCO BCOS

如何啟動(dòng)???

很簡(jiǎn)單! 一共就兩步

  1. 學(xué)習(xí)如何編寫智能合約(本專欄重點(diǎn)介紹solidity語言)相當(dāng)于就是一門新的編程語言,只是引用了很多不一樣的庫(kù) 還有要學(xué)習(xí)新的語法
  2. 學(xué)習(xí)如何使用FISCO BCOS平臺(tái)理解其部署、安裝 、使用方法以及調(diào)試、優(yōu)化等

本篇專欄就是圍繞著這兩條線進(jìn)行展開講解? 學(xué)習(xí)記錄的

然后就是最最激動(dòng)的 實(shí)戰(zhàn)部分(會(huì)隨著項(xiàng)目進(jìn)度陸續(xù)發(fā)出)

鏈接擺上、按需食用?。?/p>

智能合約:

FISCO BCOS:文章來源地址http://www.zghlxwxcb.cn/news/detail-840467.html

到了這里,關(guān)于深入淺出FISCO BCOS:區(qū)塊鏈底層平臺(tái)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 【深入淺出RocketMQ原理及實(shí)戰(zhàn)】「底層原理挖掘系列」透徹剖析貫穿RocketMQ的消息順序消費(fèi)和并發(fā)消費(fèi)機(jī)制體系的原理分析

    【深入淺出RocketMQ原理及實(shí)戰(zhàn)】「底層原理挖掘系列」透徹剖析貫穿RocketMQ的消息順序消費(fèi)和并發(fā)消費(fèi)機(jī)制體系的原理分析

    首先, DefaultMQPushConsumerImpl 是一個(gè)實(shí)現(xiàn)了 RocketMQ 的消費(fèi)者客戶端接口的類。該類的主要作用是從 RocketMQ 的 Broker 獲取消息并進(jìn)行消費(fèi)。 主要可以通過pullMessage方法進(jìn)行獲取對(duì)應(yīng)的操作,如下圖所示。 在消費(fèi)消息時(shí), DefaultMQPushConsumerImpl 會(huì)將獲取到的消息放入一個(gè) processQueue

    2024年02月11日
    瀏覽(26)
  • 【知識(shí)圖譜】深入淺出講解知識(shí)圖譜(技術(shù)、構(gòu)建、應(yīng)用)

    【知識(shí)圖譜】深入淺出講解知識(shí)圖譜(技術(shù)、構(gòu)建、應(yīng)用)

    本文收錄于《深入淺出講解自然語言處理》專欄,此專欄聚焦于自然語言處理領(lǐng)域的各大經(jīng)典算法,將持續(xù)更新,歡迎大家訂閱! 個(gè)人主頁(yè):有夢(mèng)想的程序星空 個(gè)人介紹:小編是人工智能領(lǐng)域碩士,全棧工程師,深耕Flask后端開發(fā)、數(shù)據(jù)挖掘、NLP、Android開發(fā)、自動(dòng)化等領(lǐng)域

    2023年04月08日
    瀏覽(64)
  • 《深入淺出SSD:固態(tài)存儲(chǔ)核心技術(shù)、原理與實(shí)戰(zhàn)》----學(xué)習(xí)記錄(二)

    《深入淺出SSD:固態(tài)存儲(chǔ)核心技術(shù)、原理與實(shí)戰(zhàn)》----學(xué)習(xí)記錄(二)

    SSD主要由兩大模塊構(gòu)成—— 主控和閃存介質(zhì) 。其實(shí)除了上述兩大模塊外,可選的還有緩存單元。主控是SSD的大腦,承擔(dān)著指揮、運(yùn)算和協(xié)調(diào)的作用,具體表現(xiàn)在 一是實(shí)現(xiàn)標(biāo)準(zhǔn)主機(jī)接口與主機(jī)通信 二是實(shí)現(xiàn)與閃存的通信 三是運(yùn)行SSD內(nèi)部FTL算法 可以說,一款主控芯片的好壞直

    2024年02月12日
    瀏覽(25)
  • 【大蝦送書第七期】深入淺出SSD:固態(tài)存儲(chǔ)核心技術(shù)、原理與實(shí)戰(zhàn)

    【大蝦送書第七期】深入淺出SSD:固態(tài)存儲(chǔ)核心技術(shù)、原理與實(shí)戰(zhàn)

    目錄 ??寫在前面? ??內(nèi)容簡(jiǎn)介 ??作者簡(jiǎn)介 ??名人推薦 ??文末福利 ???????博客主頁(yè):大蝦好吃嗎的博客 ? ? ???專欄地址:免費(fèi)送書活動(dòng)專欄地址 ????????近年來國(guó)家大力支持半導(dǎo)體行業(yè),鼓勵(lì)自主創(chuàng)新,中國(guó)SSD技術(shù)和產(chǎn)業(yè)良性發(fā)展,產(chǎn)業(yè)鏈在不斷完善,與

    2024年02月10日
    瀏覽(24)
  • Fisco Bcos區(qū)塊鏈一(搭建單群組FISCO BCOS聯(lián)盟鏈)

    Fisco Bcos區(qū)塊鏈一(搭建單群組FISCO BCOS聯(lián)盟鏈)

    技術(shù)文檔:https://fisco-bcos-documentation.readthedocs.io/zh_CN/latest/index.html 1、搭建單群組FISCO BCOS聯(lián)盟鏈 1. 安裝centos依賴包 安裝依賴包openssl、curl 2. 創(chuàng)建操作目錄, 下載安裝腳本 如果因?yàn)榫W(wǎng)絡(luò)問題導(dǎo)致長(zhǎng)時(shí)間無法下載build_chain.sh腳本,請(qǐng)嘗試 3. 搭建單群組4節(jié)點(diǎn)聯(lián)盟鏈 在fisco目錄下執(zhí)

    2024年02月10日
    瀏覽(51)
  • Azure 深入淺出[3]: 如何在MS Visio里面畫專業(yè)的Azure技術(shù)架構(gòu)圖?

    Azure 深入淺出[3]: 如何在MS Visio里面畫專業(yè)的Azure技術(shù)架構(gòu)圖?

    筆者最近在研究Azure,需要畫Azure的技術(shù)架構(gòu)圖;畫Azure架構(gòu)圖的方法很多,有在線的工具,有基于Azure的PPT模板,同時(shí)也有筆者這樣選擇用最傳統(tǒng)的微軟的工具:MS Visio來繪圖。那么在MS Visio里面如何繪制漂亮專業(yè)的Azure的技術(shù)架構(gòu)圖呢?當(dāng)然是Github的開源項(xiàng)目走起。 sandroasp的

    2024年02月01日
    瀏覽(19)
  • FISCO BCOS 區(qū)塊鏈(一)

    FISCO BCOS 區(qū)塊鏈(一)

    目錄 一、搭建 FISCO BCOS 鏈 1、安裝 openssl, curl 依賴 2、安裝 build_chain 腳本 二、配置控制臺(tái) 1、下載java jdk 2、安裝控制臺(tái) 3、拷貝配置文件以及證書 4、啟動(dòng)控制臺(tái) 三、Java-SDK(idea版) 1、創(chuàng)建 project ?2、引入 Java-SDK依賴 3、sol2java.sh 4、導(dǎo)入所需資源 5、創(chuàng)建測(cè)試類 參考 FISCO

    2024年01月24日
    瀏覽(31)
  • K8s項(xiàng)目實(shí)戰(zhàn)筆記獲阿里技術(shù)大咖力薦,深入淺出解讀容器編排原理與應(yīng)用

    K8s項(xiàng)目實(shí)戰(zhàn)筆記獲阿里技術(shù)大咖力薦,深入淺出解讀容器編排原理與應(yīng)用

    一、前言 Kubernetes,簡(jiǎn)稱K8s,宛如一位技藝高超的舞臺(tái)導(dǎo)演,優(yōu)雅地指揮著容器集群的華麗表演。它不僅僅是一個(gè)開源的容器集群管理系統(tǒng),更是自動(dòng)化部署、智能擴(kuò)縮容與維護(hù)等功能的集大成者。作為領(lǐng)軍的容器編排工具,Kubernetes展現(xiàn)了基于容器技術(shù)的分布式架構(gòu)的無盡魅

    2024年03月10日
    瀏覽(22)
  • FISCO BCOS區(qū)塊鏈建立配置啟動(dòng)

    創(chuàng)建操作目錄, 下載安裝腳本 搭建單群組4節(jié)點(diǎn)聯(lián)盟鏈 啟動(dòng)FISCO BCOS鏈 安裝java 獲取控制臺(tái)并回到fisco目錄 拷貝控制臺(tái)配置文件 配置控制臺(tái)證書 編寫HelloWorld合約 contract HelloWorld { string name; } 部署HelloWorld合約 調(diào)用HelloWorld合約 見https://fisco-bcos-documentation.readthedocs.io/zh_CN/latest/do

    2024年02月07日
    瀏覽(31)
  • Fisco Bcos區(qū)塊鏈四(擴(kuò)容節(jié)點(diǎn))

    4、擴(kuò)容節(jié)點(diǎn) 1. 操作命令 為保證區(qū)塊鏈安全性,F(xiàn)ISCO BCOS引入了游離節(jié)點(diǎn)、觀察者節(jié)點(diǎn)和共識(shí)節(jié)點(diǎn),這三種節(jié)點(diǎn)類型可通過控制臺(tái)相互轉(zhuǎn)換。 共識(shí)節(jié)點(diǎn):參與共識(shí)的節(jié)點(diǎn),擁有群組的所有數(shù)據(jù)(搭鏈時(shí)默認(rèn)都生成共識(shí)節(jié)點(diǎn))。 觀察者節(jié)點(diǎn):不參與共識(shí),但能實(shí)時(shí)同步鏈上數(shù)據(jù)

    2024年02月05日
    瀏覽(19)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包