Hyperledger Fabric 三种node节点 (1) 基本概念
. Endorser背书节点
给出模拟执行的结果,读写集,key的version, 这些信息反馈给sdk
• Order排序节点
用来排序分发transaction的, 对数据的转账进行确认, 生成数据放到整个区块链里面, 类似于比特币以太坊的矿工类似于挖矿, 可以解决双花问题, 对同时发出的几笔交易进行排序, 确认之后打包成block, 然后交给peer节点存储数据
•Committer打包节点
存储和同步ledger的数据,不同的节点可同时运行在物理节点、虚拟机或容器中。
• client/SDK: client 实例化transaction (cli: 控制台操作 , node sdk: nodejs操作, java sdk: java操作)
举例流程说明:
- 先有sdk/client产生一个提案, 比如说这个提案是: 小王用10块钱买洗衣液的同时还用10块钱买洗发露
- 背书节点收到了来自小王的两个提案, 模拟执行, 生成两个不同的背书策略
- 然后交给sdk, sdk收到所有的背书响应, 更新申请, 交给orderer
- orderer收到更新后, 检查签名、背书策略、排序, 如果先执行的是10块钱买洗衣液的提案, 那么账本ledger的状态就发生了变化, 钱用完了, 并且给peer节点发送了调用/更新, 再执行下一个提案10块钱买洗发露就不会成功了, 已经变成了无效的提案, 也就是在orderer里已经拒绝掉更新申请了.
书面化说明:
- sdk发送transaction proposal给一个或者多个peer
- 背书节点模拟执行,返回提案。
- sdk收集背书信息,带着签名,发给orderer节点
- orderer节点,检查数字签名,检查每个peer背书的读写集是否一致.排序.如果没有问题,就发出invocation 让每个peer去apply新的读写集.
Hyperledger Fabric 三种node节点 (1) 基本概念相关推荐
- ReviewForJob——二叉堆优先队列的实现(三种堆节点类型——int + struct HeapNode + struct HeapNode*)
[0]README 1)本文旨在给出 二叉堆优先队列的实现 的代码实现和分析, 而堆节点类型 不外乎三种: 一, 基本类型如int: 二,结构体类型 struct HeapNode: 三,结构体指针类 ...
- HTMLDOM中三种元素节点、属性节点、文本节点的测试案例
HTML dom中常用的三种节点分别是元素节点.属性节点.文本节点. 具体指的内容可参考下图: 以下为测试用例: <!DOCTYPE html> <html><head& ...
- oracle hash join outer,CSS_浅谈Oracle中的三种Join方法,基本概念
Nested loop join:
Outer - phpStudy...
浅谈Oracle中的三种Join方法 基本概念 Nested loop join: Outer table中的每一行与inner table中的相应记录join,类似一个嵌套的循环. Sort mer ...
- jQuery三种删除节点的方法
1.remove():删除所有匹配的节点,删除后,还可以继续使用.(比如把删除的再添加进来) 2.detach():删除整个节点.保留元素的绑定事件.附加的数据 3.empty():并不是删除节点,而 ...
- Hyperledger Fabric VS Ethereum
功能点 以太坊 Fabric Participation and Confidentiality 节点身份 公链 支持通道 Smart Contracts Solidity,EVM go, java, ...
- Hyperledger Fabric 2.x 单机部署多节点网络
本博客主要记录搭建一个3个排序节点.4个组织的每个组织各2个节点的fabric区块链网络 单机部署多节点网络 1.相关环境的安装与配置 2.生成相关的证书文件 3.生成相关的通道配置文件 4.生成do ...
- 超级账本Hyperledger Fabric的使用
原文地址:超级账本Hyperledger Fabric的使用 说明 网易云课堂:HyperLedger Fabric手动部署教程的视频讲解 超级账本HyperLedger Fabric手动部署教程的文 ...
- Hyperledger Fabric网络环境手动配置及其链码自动化部署
目录 5.1 网络环境的搭建 5.1.1 生成组织结构与身份证书 5.1.2 生成创世区块和通道 5.1.3 启动Fabric网络 5.1.4 创建Fabric-SDK-GO对象并建立通道 5.1. ...
- Hyperledger Fabric权限进阶篇
对于Fabric的权限和MSP配置这块,可能大家实际部署会给一堆msp目录绕晕,我们回过头来梳理一下. 1.Peer节点如何控制用户的采访权限? 我们以first-network为例, 先看下peer ...
最新文章
- 写一个函数,要求输入一个字符串和一个字符长度,根据字符长度对该字符串进行分隔
- python基础知识资料-Python学习--最完整的基础知识大全
- [学习笔记]03.字符串的扩展
- 利用python爬虫(part17)--初识selenium
- vb6 判断打印机是否有效_吊打面试官 | 算法之如何判断括号是否有效?
- FPGA控制不其他芯片
- 初始ES6-Webpack
- aliyun gradle 代理_gradle|gradle 配置阿里云镜像和插件镜像
- Java中六种List集合循环遍历取值
- c++语言偶数分离,在C++的链表中分离偶数和奇数节点
- 论文笔记《Attention Is All You Need》
- fckeditor出现the server didn't send back a proper XML response问题的解决(因为使用了“主题”)...
- 斐讯K2路由器,版本号V22.6.507.43(最新)刷华硕固件简明教程(附所有工具包)
- java多行注释_Java注释:单行、多行和文档注释
- 黑客老王:一个人的黑客史
- dbfs和dbm的换算_dB 、dBm、dBuv的概念及换算
- 虚幻引擎4崩溃?10个UE4崩溃解决方法来了
- 原形网络(Prototypical Networks)基于PyTorch的实现
- (4.3)符号表和符号解析
- 制作一个每日一图小工具
热门文章
- Android --- 怎么样在布局中显示服务器的图片,或者是后台项目中的图片+connect failed: ECONNREFUSED (Connection refused)问题的解决(文章最后)
- 四核处理器_(技术文档)你知道AMD Ryzen处理器中的CCX与CCD是什么吗?
- python匿名函数调用_python3笔记十六:python匿名函数和高阶函数
- php drive mssql,PHP 连接 MSSQL 2005/2008 以UTF8存取 并让ADODB支持的安装设置
- mysql 数据类型 int_MySQL数据类型 int(M) 表示什么意思?
- 成功解决在excel表中通过数学函数转换后,接着去掉公式转为不再随着变化的数值
- Anaconda:Anaconda安装pytorch网络连接失败记录
- 成功解决WARNING:tensorflow:From :read_data_sets (from tensorflow.contrib.learn.python.learn.
- Matlab之DNN:基于Matlab利用神经网络模型(epochs=10000000)预测勒布朗詹姆斯的2018年总决赛(骑士VS勇士)第一场得分、篮板、助攻
- Pandas to_json() 中文乱码,转化为json数组