Have a public network environment of the server can directly see Hyperledger Fabric 1.0 from scratch (ii)--Environmental Construction (public network), this article similar to the previous article, but the environment needs to build in the intranet, that is, the network is limited under the circumstances.
1: Environmental construction and testing
The host environment used in this article is CentOS, the ver
Have the version number of the strict as required, encountered a lot of pits1) No requirement to install Git version2) Install the Go 1.9 configuration environment variable3) Install Vagrant 1.9.44) Install VirtualBox 5.1.285) Create the following directory under the Go installation directory/src/(no restrictions on location)D:\Go\src\github.com\hyperledger6) Use Git to draw official source codegit clone https://github.com/hyperledger/fabric.git7) Ope
First, preparatory work
1. Through the tutorial-"(i) Hyperledger fabric in the CentOS7.2 64-bit system development environment build" to determine has been downloaded Hyperledger Fabric official sample codes.
ii. generation of networks 1. Generate Network Identification
CD
Results after successful execution:
2. St
the Go programming language installed and your system is configured correctly.
Now you need to create a subdirectory under your $gopath/src/to store your link code program.
To make things simple, we provide a simple instruction:
Mkdir-p $GOPATH/src/sacc cd $GOPATH/SRC/SACC
We create a source file:
Touch Sacc.go
Housekeeping (coded)
First let's prepare the code. Like every chain code, it implements the Init and invoke functions of the chain code. So let's use the GO Import statement to impo
Hyperledger source code Analysis of Fabric
The sorting service plays a very central role in the Super Ledger Fabric network. All transactions need to be sorted globally before they are sent to committer for validation acceptance.
In the current architecture, the function of the sorting service is extracted, as a separate Fabr
Note: This article was first published on 2017-09-22.
Hyperledger source code Analysis of Fabric introduction
The Chaincode is the user chaincode,ucc, which is important for application developers, and it provides state processing logic based on the blockchain distributed ledger, which can be used to develop a variety of complex applications.
Hyperledger
("Creating consensus plugin%s", plugin)
Return PBFT. Getplugin (Stack)
}
Logger. Info ("Creating default consensus plugin (noops)")
Return Noops. Getnoops (Stack)
}
The controller directory is a function of the consensus plug-in selection moduleThe---->hyperledger provides two algorithms pbft and Noops----> Default single node Usage noops is equivalent to no consensus algorithm
Func newconsenter (Stack consensus. Stack) consensus. Consenter
Hyperledger source code Analysis of Fabric
Deliver means that the client obtains data from the ordering service via the Grpc interface (for example, data from a specified block).
The Orderer node receives the request message, which is first given to the Deliver of the server structure in the Orderer.common.server package (SRV ab. Atomicbroadcast_deliverserver) Error method processing. This method further in
Hyperledger source code Analysis of Fabric
Broadcast means that the client sends the request message (for example, after the endorsement transaction is completed) to the ordering service via the Grpc interface.
These request messages are given to the broadcast (SRV ab) of the server structure in the Orderer.common.server package. Atomicbroadcast_broadcastserver) Error method processing. This method will mai
complete, unzip to the/usr/local directory:sudo tar -c/usr/local-xzf go1.10.1.linux-amd64.tar.gz To configure the GO locale variable:Enter the. BASHRC Configuration environment variable:$ sudo vim ~/. BASHRC or: $ sudo vim/etc/profileAdd the following code to the last side:Export gopath=/usr/local/goexport path= $GOPATH/bin: $PATH Save, exit.To make an environment variable effective:$ source ~/. BASHRC or: $ source/etc/profile After viewing the version number no problem, the configuration
Hyperledger source code Analysis of Fabric
The Orderer node startup is implemented by the main () method under the Orderer package and further calls to the main () method in the Orderer/common/server package.
The core code is shown below.
Main is the entry point of Orderer Processfunc main () {
fullcmd: = Kingpin. Mustparse (app. Parse (OS. Args[1:])
//"version" command
if Fullcmd = = version.
Fabric-sdk-java build and compile (this article is based on 1.0.1 version)
1, install jdk1.8 and above version
2, download Fabric-sdk-java GitHub address: Https://github.com/hyperledger/fabric-sdk-java
3. Import into Eclipse tools
4, switch to the project directory under the Command Window mode of execution: MVN co
The entities involved in Hyperledger Fabric 1.0 include the following:
FABRIC-CA: Mainly responsible for the maintenance of the certificate of the entity in the network;
Peer: mainly responsible for the implementation of intelligent contracts, record books;
Order: mainly responsible for the accounting content of the consensus.
1.0 architecture can be based on
The previous analysis program looked at the details of the analysis, so without the concept of framework, took two days to analyze the Hyperledger fabric architecture design, analysis of the program does not reference any information, such as error welcome correction, common progress.
The author has the following questions before the detailed analysis procedure:
1) How the CLI (command line) client sends a
OverviewFirst of all, this article is only a refinement of the official documents (Chinese, English), detailed installation instructions please read the official documents carefully.While the official name of service fabric is often added to Azure, in fact (many people don't know) that service fabric can be installed on an on-premises datacenter or on any public cloud, there is a chapter in the official doc
Software Environment
Machine a:win7x64 (192.168.8.8):
python2.7 + Fabric Latest
Django
Freesshd (SSH user name: Administrator,nt authentication, the Windows user password is ABC)
Putty (Verify SSH connection)
Machine B:
Linux
Git server
Machine C:
Linux
Ssh
Verify with
------------------------------------------------------
Fab website Tutorial:
Http://docs.fabfile.org/en/1.10/tutorial.html
1, the FAB o
follows:Gcc-o "$" "-i/gnustep/system/library/headers-fconstant-string-class=nsconstantstring-l/gnustep/system/" Library/libraries-lobjc-lgnustep-baseAnd then the same as above, under the console form command line in GNUstep1, Cd/home2, SH test.sh helloworld helloworld.m3, the implementation of Helloworld.exeDescription: The $ and $ $ in test.sh respectively represent the 1th and 2nd parameters that were obtained in the run test.sh simultaneous. Then through the SH test.sh helloworld helloworld.
Http://stackoverflow.com/questions/9000380/install-python-fabric-on-windows
Fabric installs just fine on Windows, but your'll need to either:Have a compiler installed to build the Pycrypto dependency during Setup. If you don ' t have one already, install MinGW or your can use the free version of MSVC.Install pre-built
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.