超级账本 --- ReadWriteSet的逻辑结构
用于时序校验,解决双花问题 (double
spending)
• Endorser
– 模拟执行交易,生成ReadSet和WriteSet
– ReadSet是交易前key值的状态
– WriteSet是交易产生的变化量
• Committer
– ReadSet作MVCC检查(Multi-Version
Concurrency Control),确保数据没有变
化
– 校验通过后,把交易的WriteSet写入状态
数据库
– 把Block写入区块链 (账本)
实例:
Block{ Transactions [ { "Id" : txUUID2 "Invoke" : “Method(arg1, arg2,..,argN)" “TxRWSet" : [ { ”Chaincode” : “ccId” “Reads”:[{"key" : “key1", "version” : “v1” }] “Writes”:[{"key" : “key1", ”value" : bytes1}] } // end chaincode RWSet ] // end TxRWSet }, // end transaction with "Id" txUUID2 { // another transaction }, ] // end Transactions }// end Block
作者:沐雪
文章均系作者原创或翻译,如有错误不妥之处,欢迎各位批评指正。本文版权归作者和博客园共有,如需转载恳请注明。
如果您觉得阅读这篇博客让你有所收获,请点击右下方【推荐】
为之网-热爱软件编程 http://www.weizhi.cc/