Hyperledger Fabric 1.0 从零开始(一)——吐槽
在HyperLedger/Fabric发布0.6的时候,公司就已经安排了一个团队研究这一块,后来也请IBM的专家组过来培训了一批人,不幸的是,这批人后来全走了,然后没过多久1.0就发布了。自从2017年7月HyperLedger/Fabric发布了1.0正式版后(可以参考:Hyperledger Fabric 1.0发布:基于区块链的开源分布式账本),公司领导就更加关注这个领域。然后,就安排我一个人来接手,我主要是做Android和iOS方向的开发,偶尔客串一下java后台服务开发,对linux的了解不是很深入,更别提什么zookeeper和kafka这些对我一个小小前端来讲都特别高大上的服务组件。接手后就开始按照已离职那批人留下的文档一行一行的敲和调试,其实就是copy代码到linux命令行里面,最后看到一个跑通的提示信息,然后也不知道是什么原理,就有个可用的restful服务,能够实现deploy、invoke和query等操作,当时是用了一台服务器做的,我也天真的以为这就搞定了,就好比tomcat里放个war包一样简单,但真正的噩梦才刚刚开始。
HyperLedger/Fabric1.0版本,相比较于0.6版本不仅性能上有了大幅的调优(Hyperledger Fabric1.0架构概览,主要是架构上的调整更加友好),在实际搭建和使用的方法上更是有了巨大的变化,这就导致我这个自我感觉入门了的门外汉彻底变成了一个连门在哪个方向都不知道的门外汉,尤其是当我得知restful方案已经被废弃后(参考这个:Remove deprecated devops REST API),简直悲愤欲绝,想死的心都有了。而且当我深入一点了解的时候,发现这是需要多台服务器做分布式部署,之前那团队干的压根就是个demo,最可悲的是我想申请IBM培训资源,直接被拒了……
好吧,上述吐槽仅是片面,关于Fabric这个项目的吐槽以后都会集中在此,不会在后续篇章中废话。
截止今天,笔者的Fabric项目基本已经完成整体搭建,所以就抽空来开个博客,写写这方面的内容,希望能够帮助那些从零开始的朋友们。
后面也会分篇来介绍如何一步一步从零开始做这个项目,这个真的是从零开始,因为到现在,我都不敢说自己区块链入门了!
整体篇章具体会包含如下内容:
目录
1:环境构建
2:Fabric源码及镜像文件处理
3:运行测试e2e
4:创建Fabric多节点集群
5:启动Fabric多节点集群
6:Fabric多节点集群生产部署
7:Fabric多节点集群生产启动
8:智能合约
9:CouchDB
10:CA
11:fabric-sdk-java应用
12:orderer分布式方案
13:Hyperledger Fabric问题小节
上述目录是笔者最近在做这个项目的时候一步一步记录下来的操作路径,主要也是担心自己会忘记流程,最终整理成博文需要慢慢来,也算是对自己在这个项目上有个交代了。
章节目录:
Hyperledger Fabric 1.0 从零开始(一)——吐槽
Hyperledger Fabric 1.0 从零开始(二)——环境构建(公网)
Hyperledger Fabric 1.0 从零开始(三)——环境构建(内网/准离线)
Hyperledger Fabric 1.0 从零开始(四)——Fabric源码及镜像文件处理
Hyperledger Fabric 1.0 从零开始(五)——运行测试e2e
Hyperledger Fabric 1.0 从零开始(六)——创建Fabric多节点集群
Hyperledger Fabric 1.0 从零开始(七)——启动Fabric多节点集群
Hyperledger Fabric 1.0 从零开始(八)——Fabric多节点集群生产部署
Hyperledger Fabric 1.0 从零开始(一)——吐槽的更多相关文章
- Hyperledger Fabric 1.0 从零开始(八)——Fabric多节点集群生产部署
6.1.平台特定使用的二进制文件配置 该方案与Hyperledger Fabric 1.0 从零开始(五)--运行测试e2e类似,根据企业需要,可以控制各节点的域名,及联盟链的统一域名.可以指定单独节 ...
- Hyperledger Fabric 1.0 从零开始(三)——环境构建(内网/准离线)
有公网环境的服务器可以直接看 Hyperledger Fabric 1.0 从零开始(二)--环境构建(公网) ,本篇内容与上篇相似,只不过环境搭建需要在内网下,也就是网络被限制的情况下. 1:环境构 ...
- Hyperledger Fabric 1.0 从零开始(二)——环境构建(公网)
1:环境构建 在本文中用到的宿主机环境是Centos ,版本为Centos.x86_647.2,通过Docker 容器来运行Fabric的节点,版本为v1.0.因此,启动Fabric网络中的节点需要先 ...
- Hyperledger Fabric 1.0 从零开始(十二)——fabric-sdk-java应用【补充】
在 Hyperledger Fabric 1.0 从零开始(十二)--fabric-sdk-java应用 中我已经把官方sdk具体改良办法,即使用办法发出来了,所有的类及文件都是完整的,在文章的结尾也 ...
- Hyperledger Fabric 1.0 从零开始(十二)——fabric-sdk-java应用
Hyperledger Fabric 1.0 从零开始(十)--智能合约 Hyperledger Fabric 1.0 从零开始(十一)--CouchDB 上述两章,最近网上各路大神文章云集,方案多多 ...
- Hyperledger Fabric 1.0 从零开始(一)
在HyperLedger/Fabric发布0.6的时候,公司就已经安排了一个团队研究这一块,后来也请IBM的专家组过来培训了一批人,不幸的是,这批人后来全走了,然后1.0就发布了.自从2017年7月H ...
- Hyperledger Fabric 1.0 从零开始(十三)——orderer分布式方案
简述 在搭建HyperLedger Fabric环境的过程中,我们会用到一个configtx.yaml文件(可参考Hyperledger Fabric 1.0 从零开始(八)——Fabric多节点集群 ...
- Hyperledger Fabric 1.0 从零开始(五)——运行测试e2e
3:运行测试e2e 3.1.运行fabric-samples的问题说明 该问题说明能够解决6.1.平台特定使用的二进制文件配置第一步的问题.可以选择继续阅读该说明,或者等参考到6.1小节时再反向阅读本 ...
- Hyperledger Fabric 1.0 从零开始(七)——启动Fabric多节点集群
5:启动Fabric多节点集群 5.1.启动orderer节点服务 上述操作完成后,此时各节点的compose配置文件及证书验证目录都已经准备完成,可以开始尝试启动多机Fabric集群. 首先启动or ...
随机推荐
- SVProgressHUD源码解读(2.0.3)
SVProgressHUD是iOS开发中比较常用的一个三方库,用来在执行耗时操作或者指示用户操作结果的场合,由于使用简单,功能丰富,交互友好,被广泛应用.本文从源码的角度,解读一下实现的过程,希望能起 ...
- sqlserver-4064
早上忘记了SQLServer的sa帐户密码,在网上搜索才弄清楚了解决办法:1.在SQLServer企业管理器中输入以下命令:ALTER LOGIN sa ENABLE GO ALTER LOGIN s ...
- javascript多种方法实现数组去重
先说说这个实例的要求:写一个方法实现数组的去重.(要求:执行方法,传递一个数组,返回去重后的新数组,原数组不变,实现过程中只能用一层循环,双层嵌套循环也可写,只做参考): 先给初学者解释一下什么叫数组 ...
- 2、粘包现象(struct模块)
昨天我们所做的套接字是有漏洞的,它会出现粘包现象,没有发现这个问题的我们今天会进行演示.今天也会稍微讲解一下基于udp的套接字. 一.基于udp的套接字 udp是无链接的,先启动哪一端都不会报错 ud ...
- TCP/IP协议和OSI协议
作为一个与网络密切相关的Web前端工程师,TCP/IP和OSI模型不可不知,至少要知道一下这些常识性知识,在这我做一下记录 TCP/IP协议簇: TCP/IP是一组协议的代名词,包括许多别的协议,组成 ...
- elasticsearch映射
前面讲到,无论是关系型数据库还是非关系型数据库,乃至elasticsearch这种事实上承担着一定储存作用的搜索引擎,数据类型都是非常重要而基础的概念.但elasticsearch与其它承担着数据存储 ...
- Android开发之SoundPool使用详解
使用SoundPool播放音效 如果应用程序经常播放密集.急促而又短暂的音效(如游戏音效)那么使用MediaPlayer显得有些不太适合了.因为MediaPlayer存在如下缺点: 1) 延时时间较长 ...
- GC选择之CMS 并发标记清除
CMS收集器 Concurrent Markup Sweep 并发标记清除 使用了标记-清除算法 与标记-压缩相比,并发阶段会降低吞吐量 算法作用在老年代以及永久区(新生代使用ParNew) -XX: ...
- java异常之后代码执行测试
1.程序代码: public static void main(String[] args) { int[] a = {1,2,3}; for(int i=0;i<4;i++){ System. ...
- BotVS趋势交易策略-RSI
BotVS趋势交易策略-RSI, 基于Python实现. RSI简单买卖测试, 默认 70-100卖出,0-30买入 参数 代码 import math def adjustFloat(v): ret ...