fabric-samples到底包含了哪些案例蒿柳?

00 導(dǎo)言

? ? ??在上一講《Fabric 環(huán)境搭建時(shí)bootstrap.sh幫我們做了什么跪妥?》中,我們知道bootstrap.sh幫我們做了三件事:

  1. 從github上克隆 hyperledger/fabric-samples并進(jìn)入該目錄肌割,然后檢出適當(dāng)?shù)陌姹?/li>
  2. 在fabric-samples目錄下安裝特定平臺(tái)的 Hyperledger Fabric 二進(jìn)制可執(zhí)行文件 和配置文件
  3. 下載 指定版本的Hyperledger Fabric 的docker鏡像

? ? ??其中第一件事情就是從github上克隆 hyperledger/fabric-samples卧蜓,克隆完成后,它里面包含的目錄如下把敞。
360截圖20180806161424892.png

? ? ??接下來(lái)我們來(lái)介紹一下這些目錄是干什么的弥奸?這些目錄里包含了一些什么?

01 balance-transfer目錄

? ? ??這是一個(gè)轉(zhuǎn)賬的案例奋早,通過(guò)node.js SDK完成如下功能:創(chuàng)建通道(chanel)盛霎,加入通道赠橙,部署鏈碼(chaincode-就是智能合約),實(shí)例化鏈碼愤炸,調(diào)用鏈碼完成交易期揪,以及查詢鏈碼等功能。鏈碼的編程語(yǔ)言提供了兩種語(yǔ)言的示例:golang和node.js語(yǔ)言规个。而app端又提供了兩種語(yǔ)言的示例:node.js和typescript凤薛。整體如下圖。


360截圖20180806161613515.png

02 basic-network目錄

? ? ??該目錄提供了一系列shell腳本诞仓,去生成初始化并啟動(dòng)一個(gè)最基本的網(wǎng)絡(luò)缤苫,包含一個(gè)order節(jié)點(diǎn),一個(gè)組織下的一個(gè)普通的peer節(jié)點(diǎn)墅拭。

腳本 作用
init.sh 刪除之前存儲(chǔ)的證書數(shù)據(jù)
generate.sh 生成加密材料活玲、創(chuàng)世區(qū)塊、通道等
start.sh 啟動(dòng)網(wǎng)絡(luò)
stop.sh 刪除網(wǎng)絡(luò)
teardown.sh 徹底刪除所有與網(wǎng)絡(luò)有關(guān)的證據(jù)(刪除存儲(chǔ)和鏡像)

03 chaincode目錄

? ? ??該目錄是一些鏈碼的示例帜矾,包括以下目錄:

目錄 作用
abac Attribute-Based Access Control 基于身份屬性的訪問(wèn)控制
chaincode_example02 一個(gè)簡(jiǎn)單的賬戶間轉(zhuǎn)賬和查詢 的示例
fabcar 一個(gè)關(guān)于汽車的綜合示例翼虫,提供了Fabric功能的廣泛演示屑柔。 演示與證書頒發(fā)機(jī)構(gòu)進(jìn)行交互并生成注冊(cè)證書的過(guò)程屡萤,用這些身份來(lái)查詢和更新帳本
marbles02 彈珠資產(chǎn)管理鏈碼,演示couchDB的富查詢(基于json)
marbles02-private 暫不了解
sacc SimpleAssetChainCode 簡(jiǎn)單資產(chǎn)管理鏈碼示例

04 chaincode-docker-devmode目錄

? ? ??該目錄演示在開(kāi)發(fā)網(wǎng)絡(luò)時(shí)掸宛,利用預(yù)生成的order和chanel來(lái)啟動(dòng)“開(kāi)發(fā)模式”死陆。 這樣,用戶可以立即進(jìn)入編譯鏈碼和驅(qū)動(dòng)調(diào)用的過(guò)程唧瘾。

? ? ??通常措译,鏈碼由peer節(jié)點(diǎn)啟動(dòng)和維護(hù)。 然而饰序,在“開(kāi)發(fā)模式”中领虹,鏈碼由用戶構(gòu)建和啟動(dòng)。在鏈代碼開(kāi)發(fā)階段求豫,此模式非常有用塌衰,可用于快速代碼/構(gòu)建/運(yùn)行/調(diào)試。

05 fabcar目錄

? ? ??一個(gè)汽車的例子蝠嘉,主要是通過(guò)單機(jī)配置模擬環(huán)境最疆,實(shí)現(xiàn)管理員admin用戶的enrollAdmin(注冊(cè)管理),其他用戶的注冊(cè)(主要是指user1)蚤告,以及實(shí)現(xiàn)query和invoke努酸。

? ? ??該目錄下主要包含的是一些js文件和一個(gè)startFabric.sh,沒(méi)有包含鏈碼(相關(guān)的鏈碼放在chaincode/fabcar目錄下)杜恰。運(yùn)行startFabric.sh會(huì)先運(yùn)行basic-network啟動(dòng)網(wǎng)絡(luò)获诈。

06 fabric-ca目錄

? ? ??演示如何使用Hyperledger Fabric CA客戶端和服務(wù)器為order仍源,peer,管理員和最終用戶生成加密證書上舔涎,以便私鑰永遠(yuǎn)不會(huì)離開(kāi)生成它們的主機(jī)或容器镜会。

? ? ??為啥要使用CA呢? cryptogen加密工具不適用于生產(chǎn)環(huán)境终抽,因?yàn)樗谝粋€(gè)位置生成所有私鑰戳表,然后必須將其復(fù)制到適當(dāng)?shù)闹鳈C(jī)或容器。

07 first-network目錄

? ? ??我們平常說(shuō)的搭建hyperledger fabric環(huán)境昼伴,一般指的是就是部署運(yùn)行這個(gè)示例匾旭。該目錄下提供一個(gè)腳本byfn.sh文件,該文件提供一條龍服務(wù)圃郊,演示了生成證書价涝,啟動(dòng)網(wǎng)絡(luò)節(jié)點(diǎn)(兩個(gè)組織,每個(gè)組織有2個(gè)節(jié)點(diǎn))持舆,以及部署色瘩、實(shí)例化鏈碼,并調(diào)用鏈碼進(jìn)行轉(zhuǎn)賬和查詢逸寓,最后停止整個(gè)網(wǎng)絡(luò)居兆。本示例采用的是solo共識(shí)服務(wù)機(jī)制。

08 high-throughput目錄

? ? ??訪目錄提供的案例竹伸,用于演示如何正確設(shè)計(jì)鏈碼數(shù)據(jù)模型泥栖,以處理在每秒數(shù)千個(gè)并發(fā)事務(wù),這些事務(wù)都更新了賬本的相同資產(chǎn)勋篓。實(shí)際上就如何處理高并發(fā)的情況吧享!

09 scripts目錄

? ? ??訪目錄提供了兩種不同的腳本,一個(gè)是bootstrap.sh譬嚣,該腳本跟《Fabric 環(huán)境搭建時(shí)bootstrap.sh幫我們做了什么钢颂?》中說(shuō)的bootstrap.sh幾乎一致,只是少了個(gè)sampleInstall這個(gè)過(guò)程拜银。

? ? ??還有一種是Jenkins_Scripts殊鞭,對(duì)這行種腳本小編了解得不多,只知道Jenkins是一種基于Java開(kāi)發(fā)的一種持續(xù)集成工具盐股。

10 總結(jié)

? ? ??到此為止钱豁,我們幾乎把fabric-samples的一級(jí)目錄和文件都作了個(gè)簡(jiǎn)單的介紹。

? ? ??學(xué)習(xí)hyperledger fabric疯汁,我們除了首先要學(xué)習(xí)環(huán)境怎么部署和搭建之外牲尺,還需要通過(guò)一些案例來(lái)透徹理解fabric的架構(gòu)設(shè)計(jì)、賬戶體系、授權(quán)認(rèn)證機(jī)制谤碳、以及智能合約和SDK等方方面面的內(nèi)容溃卡。而fabric-samples里正好包含了若干案例,來(lái)幫助我們達(dá)到這些目標(biāo)蜒简∪诚郏可以說(shuō),只要認(rèn)真研究了fabric-samples提供的這些案例搓茬,基本上已經(jīng)對(duì)hyperledger fabric的技術(shù)知識(shí)體系和動(dòng)作原理有一定的了解了犹赖,接下來(lái)就要多多參與到工程級(jí)別的項(xiàng)目開(kāi)發(fā)中,積累更多業(yè)務(wù)方面的經(jīng)驗(yàn)卷仑,讓hyperledger fabric更接地氣峻村,更面向?qū)嶋H業(yè)務(wù)場(chǎng)景!

? ? ??由于小編的技術(shù)和業(yè)務(wù)水平有限锡凝,未能完全參透此目錄的所有案例的內(nèi)容粘昨。所以在這一講中,我們只是簡(jiǎn)單介紹了一下各案例和對(duì)應(yīng)的目錄結(jié)構(gòu)窜锯,后期张肾,我們還會(huì)出一系列的文章來(lái)詳細(xì)講解這些案例并把這些案例部署運(yùn)行起來(lái)。敬請(qǐng)期待锚扎!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末吞瞪,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子工秩,更是在濱河造成了極大的恐慌尸饺,老刑警劉巖,帶你破解...
    沈念sama閱讀 212,383評(píng)論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件助币,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡螟碎,警方通過(guò)查閱死者的電腦和手機(jī)眉菱,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,522評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)掉分,“玉大人俭缓,你說(shuō)我怎么就攤上這事∷止” “怎么了华坦?”我有些...
    開(kāi)封第一講書人閱讀 157,852評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)不从。 經(jīng)常有香客問(wèn)我惜姐,道長(zhǎng),這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書人閱讀 56,621評(píng)論 1 284
  • 正文 為了忘掉前任歹袁,我火速辦了婚禮坷衍,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘条舔。我一直安慰自己枫耳,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,741評(píng)論 6 386
  • 文/花漫 我一把揭開(kāi)白布孟抗。 她就那樣靜靜地躺著迁杨,像睡著了一般。 火紅的嫁衣襯著肌膚如雪凄硼。 梳的紋絲不亂的頭發(fā)上仑最,一...
    開(kāi)封第一講書人閱讀 49,929評(píng)論 1 290
  • 那天,我揣著相機(jī)與錄音帆喇,去河邊找鬼警医。 笑死,一個(gè)胖子當(dāng)著我的面吹牛坯钦,可吹牛的內(nèi)容都是我干的预皇。 我是一名探鬼主播,決...
    沈念sama閱讀 39,076評(píng)論 3 410
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼婉刀,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼吟温!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起突颊,我...
    開(kāi)封第一講書人閱讀 37,803評(píng)論 0 268
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤鲁豪,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后律秃,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體爬橡,經(jīng)...
    沈念sama閱讀 44,265評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,582評(píng)論 2 327
  • 正文 我和宋清朗相戀三年棒动,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了糙申。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,716評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡船惨,死狀恐怖柜裸,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情粱锐,我是刑警寧澤疙挺,帶...
    沈念sama閱讀 34,395評(píng)論 4 333
  • 正文 年R本政府宣布,位于F島的核電站怜浅,受9級(jí)特大地震影響铐然,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,039評(píng)論 3 316
  • 文/蒙蒙 一锦爵、第九天 我趴在偏房一處隱蔽的房頂上張望舱殿。 院中可真熱鬧,春花似錦险掀、人聲如沸沪袭。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 30,798評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)冈绊。三九已至,卻和暖如春埠啃,著一層夾襖步出監(jiān)牢的瞬間死宣,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 32,027評(píng)論 1 266
  • 我被黑心中介騙來(lái)泰國(guó)打工碴开, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留毅该,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,488評(píng)論 2 361
  • 正文 我出身青樓潦牛,卻偏偏與公主長(zhǎng)得像眶掌,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子巴碗,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,612評(píng)論 2 350

推薦閱讀更多精彩內(nèi)容