原创 Flink分析使用之十底層RPC的實現

一、介紹 Flink是分佈式大數據處理框架,那麼網絡通信就離不開了,從目前來看,幾乎所有的開源的大型軟件,尤其是Java的,基本已經不再傾向於自己寫底層網絡通信,畢竟有很多可以使用的Rpc網絡通信框架可以來完善使用,Flink也是

原创 flink分析使用之九通信框架

一、Flink的分佈通信模型 flink做爲一個分佈式的應用,它基於的通信當然是分佈式的通信框架。在Flink中,可以分爲兩種通信方式,一種是通過網絡的傳輸通信,一種是基於本地的數據交換通信。網絡通信主要是用來連接節點間的通信(包

原创 fabric使用國官的openssl和GmSSL環境安裝

一、介紹 在國密算法系列中,開源的代碼裏,Openssl和GmSSL是比較爲大家熟悉的開源庫。當然,Openssl只是在1.1.1後纔開始支持。而且支持的不是套件系列而只是算法系列。在目前流行的Linux操作系統中,前者基本都已經

原创 caliper的應用之二Solo版本的分析使用

一、安裝使用 在上一篇中其時啓動的就是一個默認的Solo版本,其實在實際的應用場景中基本不會使用此場景來進行應用。但是對於一些學習和熟悉Fabric的初步知識的人可以說有一個比較直觀的方式。還是有很大的方便性的。 Caliper的

原创 caliper的應用之一最新版本安裝和使用

一、Caliper的介紹 Caliper是華爲出的一款對區塊鏈進行壓力測試的工具,網上的介紹不少,但基本都是老版本的,和新版本的使用有比較大的差別,好多問題的解決方式和方法都有了比較大的變化,另外一些代碼和配置文件的改動也非常大。

原创 Fabric源碼分析之三啓動流程代Orderer分析

一、排序節點的啓動 本來是想把Peer和Orderer放到一起,結果發現內容太多了,不得不拆開。其實明白了Peer的流程,Orderer也就差不多了,不同的是由於功能的不同,啓動的服務肯定有所不同,諸如通信、數據庫等。但到了底層,

原创 Fabric源碼分析之三啓動流程代碼Peer分析

一、安裝啓動方式 Fabric的啓動有幾種方法,一種是使用Docker從官方下載相應的版本然後啓動,一種是直接源碼編譯啓動,這兩種方式沒有本質的不同。同時,最新的Fabric提供了Solo和Raft兩種共識服務機制(不討論舊版本的

原创 caliper的應用之三Raft版本的分析使用

一、安裝使用 在分析好Solo版本之後,其實都明白,實際應用中,不可能會使用這個版本的,因爲,這個不是一個真正的應用環境。早先Caliper使用的是Kafka共識排序,現在新的版本提供了Raft共識排序。爲什麼要換成Raft呢?主

原创 redis源碼分析之一——介紹

redis源碼分析之一——介紹 一、Redis介紹 在NoSql數據庫中,要說當紅“炸子雞”,Redis是當仁不讓的。而且它還有一個比較特別之處,它是用純c語言實現的。這和其它一些相關的程序使用Java、Go等當紅語言完成,Red

原创 算法和數據結構之樹

一、介紹 面試造火箭,開始造樹。那麼什麼是樹(Tree)呢?馬路邊兒上的大樹,森林裏的大樹?是的。就是那玩意。數據結構的樹之所以叫樹就是因爲和馬路邊兒上的大樹長得差不多。做爲一種抽象的數據類型(ADT)——樹,就是因爲他的組織結構

原创 算法和數據結構之鏈表

一、基礎知識 繼續造火箭。 什麼是鏈表?顧名思義,鏈表就是鏈狀的數據結構,可以想象成在日常生活中,一條鐵鏈一環扣一環的鏈結在一起。每個環上存儲了相關的數據。在數據結構中,組成鏈表的節點通常有兩個以上的域,一個域用來存儲數據,其它的

原创 Fabric源碼分析之九數據庫存儲源碼分析leveldb

一、fabric數據存儲 在fabric中,數據的存儲被抽象成一個帳本對象,本身數據底層的數據庫和文件是被隔離的,這樣做的優勢在於,上層數據的變化,對底層數據庫的影響極小,甚至於一般情況下都不會有什麼影響。抽象的這一層包括有帳本數

原创 Fabric源碼分析之八commiter(記帳)節點分析

一、記帳節點 區塊鏈的一個特點是分佈式記帳,即各個節點都要承載相同的一份數據。在聯盟鏈中,因爲一些節點的配置有所不同,所以可能有些節點沒有記帳功能或者說不需要完整的帳本。因此本篇就針對具有記帳功能的相關源碼進行分析。記帳其實就是數

原创 fabric源碼分析之七鏈碼源碼分析

一、容器和虛擬機 在fabric中,有兩類鏈碼,一類是系統鏈碼,一類是用戶鏈碼。而鏈碼都需要安裝和實例化才能使用,在這當中,它們雖然原理相似,但是實現的方式還是有所不同。在系統鏈碼中,首先要Register,然後再Deploy才能

原创 Fabric源碼分析之六MSP和BCCSP源碼分析

一、介紹 在前面分析了MSP的基本的流程和源碼,但是還是有些疏漏,這裏補充一下,同時把相關的BCCSP的部分分析一下,充實整個的加密系統。在MSP中主要對配置管理和證書驗證進行一下分析;BCCSP則從整體流程和相關源碼進行一下分析