由于资源有限,就开了2台虚拟机来模拟一下,当然可以用docker实现,这里就不演示了,consul服务也不开集群模式了,同时 consul服务与web服务就放在同一个服务器上了,看懂意思就可以了,多个web服务,就以不同的端口来区分。
然后再用本地的 appliedIndex 和 confirmedIndex 进行对比,如果本地已应用的 index 小于 confirmedIndex 则进行等待,直到追上 confirmedIndex 才会调用 nr.notify 发送通知信号解除 linearizableReadNotify 的等待进行后续的串行读操作。