白皮书讲“区块链共识取决于确定性 (可重现的) 的行为。 这意味着所有的并行计算必须是不能互斥或者具有其他锁特性的。 没有了锁就必须有一些方式可以确保所有的帐户只可以读取和写入他们自己的私有数据库。 这也意味着每个帐户处理消息是顺序的,而并发只能在帐户层面进行。
In an EOS.IO software-based blockchain, it is the job of the block producer to organize message delivery into independent threads so that they can be evaluated in parallel. 每个帐户的状态由且只由发送给它的消息决定。 进度表由区块生产者输出并且会被确定性的执行,但是生成进度表的过程却不一定是确定性的。 这意味着区块生产者可以使用并发算法来调度交易。
并行执行的一方面意味着当一个脚本生成了一个新的消息,它不会立即被发送,而被安排在下一个轮训中发送。 不能立马发出的原因是接受者可能在另一个线程中活跃的变更自己的状态”。
白皮书是说区块链中的共识是取决于确定性的行为,这个行为是可以重现的。这也就意味着所有的并行计算必须是不能互相排斥的或是具有其他锁住特性的。没有了锁,就必须有一些方式,可以确保所有的账户,只可以读取和写入他们自己拥有的数据库。这也意味着每个账户处理消息是按照一定顺序的,而这个并发却只能在账户层面进行。
在基于eos.io软件的区块链中,区块生产者的工作是将消息传递组织成独立的线程,以便能够并行地评估它们。
每个账户的状态由且只由发送给他的消息来进行决定。进度表是由区块生产者输出并且会被确定性的执行。但是生成的这个进度表的过程却不一定是确定性的。
这样一来 ,也就意味着区块生产者可以使用并发算法来调度交易。
并行执行的一方面 ,当一个脚本生成了一个新的消息,他将不会被立即发送。而是被安排在下一个轮训中发送。不能够被立马发出的原因是接受者可能在另一个线程中活跃的变更了自己的状态。
EOS白皮书中应用程序的确定性并行执行是说的啥玩意儿?
网友评论