官术网_书友最值得收藏!

前言

區塊鏈是軟件系統架構中的一項架構技術,是從以比特幣(比特幣是一種“數字貨幣”,我國尚未發行法定數字貨幣;比特幣不具有與貨幣等同的法律地位,不能且不應作為貨幣在市場上流通使用。)為代表的“數字貨幣”的底層技術中提煉出來的,已成為解決數據時代信任和安全的一類解決方案。雖然“數字貨幣”不具有與貨幣等同的法律地位,但區塊鏈是一項有前途的技術。

HyperLedger Fabric起源于IBM公司,是由Linux基金會組織孵化的一個項目,是具備保密性、靈活性和可擴展性等特性的分布式賬本解決方案框架,能解決經濟社會中各類復雜場景的業務需求。

為什么要寫這本書

作者在作為技術培訓講師的經歷中,發現自己有一個很好的品質:本能地換位思考,每講述一個知識點,都會站在學員的角度理解知識點,并以此來糾正講述方式,該項品質一直伴隨著作者的培訓生涯。

學習HyperLedger Fabric區塊鏈技術可能不會很順利,會遇到各種陷阱,解決各種所謂的坑,需要花費大量的時間。解決某個問題的主要手段是通過搜索引擎查找,但網上知識點少且零散,需要反復思考和調試。當一個問題解決后,可能又會出現另一個問題,初學者要有足夠的耐心,才能一步一步前行。如何能讓學習者減少Fabric學習的困難呢?于是作者萌發了寫一本書的想法,使讀者既能快速入門Fabric又能實戰,為廣大基于Fabric區塊鏈技術實現具體應用的開發者提供幫助和指導。

本書以初學者學習的角度編寫,從區塊鏈的起源開始,一步一步有條不紊地介紹,從原理到實踐、從簡單到復雜、從單點知識到整體項目,初學者通過對每個章節的學習,逐步增長知識,按照書中的代碼實踐就能手動搭建出完整的HyperLedger Fabric區塊鏈項目。初學者全面理解本書全部知識后,對HyperLedger Fabric區塊鏈會有豁然開朗的感覺。

如何閱讀本書

關于區塊鏈的書籍很多,大部分是介紹區塊鏈理論的,針對開發者實操性講解的書籍非常少。

眾所周知,區塊鏈知識專業性極強,涉及密碼學、信息學、經濟學和心理學等。每一位初學者從頭開始學習密碼學等知識不現實,所以本書編寫的思路是多實踐、少理論,從實踐出發,對于不清楚的原理,讀者可查閱專業書籍,本書不涉及專業理論的介紹。

基礎篇為第1章,從基礎知識談起,介紹區塊鏈技術的起源、區塊鏈涉及的核心技術以及目前最流行的區塊鏈開發平臺:公有鏈平臺和聯盟鏈系統。

入門篇為第2~12章,介紹HyperLedger Fabric系統的理論和技術,并手把手教讀者搭建可在生產環境中運行的系統。第2章介紹HyperLedger如何起源,怎么定義、組織超級賬本項目。從第3章開始直入主題,介紹什么是Fabric,架構的演進過程,業務交易流程及Fabric所涉及的賬本、智能合約、通道、節點、排序和接口等技術。第4章講解系統的搭建,先介紹Fabric基礎環境的搭建,按照書中提供的步驟,復制命令即可完成Docker、Go語言環境、Git、Fabric和Fabric鏡像的安裝。基礎環境搭建完成后,第5章介紹官方End-2-End案例及其運行與分析。然后,開發者在第6章通過經典的自主開發Helloworld的例子,進一步鞏固Fabric相關知識。第7章介紹Fabric共識之一:Solo測試環境部署,重點介紹單機單節點和多機多節點的部署方式。第8章介紹Fabric另一共識:Kafka生產環境部署,依次介紹了Kafka模式的概念、網絡拓撲、運行配置、集群啟動和運行驗證。第9章介紹Fabric CA的概念、安裝、服務端和客戶端命令及搭建Fabric CA的實例。第10章介紹擴展數據庫CouchDB的概念、部署、接口及應用。第11章介紹Fabric用于業務邏輯編寫的智能合約,從智能合約概念開始,依次說明智能合約操作命令、編寫智能合約的方法及部署智能合約的案例。第12章著重介紹使用SDK的方法,先分析官方Java-SDK源碼結構,再對官方Java-SDK代碼進行封裝和優化,整理出方便調用的一套RESTful風格的跨語言接口,最后通過一個案例講解如何在生產環境中使用SDK。

通過基礎篇和入門篇的學習,讀者基本掌握了使用HyperLedger Fabric進行業務開發的基礎知識。第13章實戰篇介紹SAAS區塊鏈支付系統案例完整的開發流程,讓讀者了解Fabric項目開發的整體過程,加深對HyperLedger Fabric的理解和應用。

勘誤和支持

由于作者的水平有限,加之編寫時間倉促,書中難免會出現一些不妥或不足,懇請讀者批評指正。歡迎您將書中發現的問題發送到郵箱93634776@qq.com,作者將盡量為您提供滿意的解答。如果您有更多寶貴意見,也可以通過微信(微信號:llongst)與作者溝通,期待能夠得到您的反饋。

致謝

感謝浙江云野科技有限公司的李飛軍先生和曹成坤先生,在硬件設施與設計上給予的支持及指導。

還要感謝我親愛的妻子和兒子,是你們在背后默默地承擔著一切。

當然,最應該感謝的是正在閱讀本書的讀者朋友,無論您是初學者,還是資深開發者,您的閱讀和關心讓HyperLedger Fabric可以更迅速地發展和成長。

編者

2020年7月

主站蜘蛛池模板: 井冈山市| 五家渠市| 中牟县| 灌云县| 珠海市| 新巴尔虎左旗| 昌宁县| 乳山市| 玉门市| 马龙县| 龙口市| 甘谷县| 长兴县| 曲松县| 忻州市| 夏津县| 绥阳县| 武山县| 黄梅县| 彩票| 高唐县| 山东省| 南乐县| 家居| 奉化市| 廉江市| 石泉县| 古浪县| 从江县| 西和县| 宾阳县| 桂林市| 理塘县| 米易县| 保康县| 会东县| 年辖:市辖区| 忻州市| 永安市| 广西| 白河县|