Fisco Bcos 答疑

问:测试8的结果,集群中有4个节点,其中宕机3个,发起一笔交易,交易失败;然后启动宕机的3个节点,还是交易失败;但如果有一笔新的交易执行,会激活上一笔交易(交易失败的那一笔),最后失败的那一笔会交易成功。这种情况下的交易原理是怎样的?

Fisco Bcos 答疑_第1张图片
答:不存在激活上一笔交易的说法,链异常不能共识,发送的交易能保留在活着的节点上,待链恢复正常后,这笔交易会继续执行。失败的交易应该还在交易池,当恢复正常后再打包进了区块中,所以成功了。

问:启动宕机的3个节点,这时侯链恢复正常,但这笔失败交易没执行,而是有新一笔交易进来后,这笔失败交易才会执行,交易成功。那么问题是为何失败的交易在链恢复正常时不立即执行,而要等到新交易后才执行?

答:这个应该跟它打包策略有关,我猜节点接收到交易后才触发共识模块去打包,宕机节点起来后应该是要定时同步交易和状态,同步交易应该不会触发打包。
4个节点挂了3个后,在线的那个异常节点视图会比较大;启动宕机的三个节点后,这三个节点可以达成一致的视图(比较小,可能是0或者1),那么只有这三个节点可以正常打包共识区块,所以存储于异常节点中的交易没有被处理;当有新的交易发送过来时,这三个一致视图的节点对新交易共识打包会产生新的区块,新区块同步到异常节点,异常节点同步区块后,视图归0,这个时候异常节点变为正常的共识节点,可正常打包交易,存在该节点中的交易就会被打包共识上链了

问:同一个链上群组极限可以设置多少个?

答:只要机器资源充足,理论上是无限个。没有配置上的限制,看硬件性能。

问:联盟链中怎样实现:一个用户只能上链与查询自己的链上数据,看不到别人的,但是别人给授权了就可以看到了;就像银行,只能操作自己的账户的钱,别人的操作不了,但是别人授权了临时密码,就可以看别人授权的数据?

答:数据上链时就加密。数据是广播的,链上存hash和凭据,授权他人访问,数据实际存在链外数据库或云服务里。一般是这样的。可以参考weid的实现。

问:区块链的意义?

答:技术是可以解决人性的一部分问题的,摄像头可以减少交通违章和增强交通事故责任认定(肇事者往往不承认自己的过错)
再比如:https://mp.weixin.qq.com/s/HuPCyT4nldyZh6F6KE7BTg

你可能感兴趣的:(区块链)