Soul源码分析--soul-admin数据同步之zookeeper、nacos
在 上一篇文章中分析过 http、websocket 同步的原理,没看过的同学可以去看一看,这篇我们接着来分析 zookeeper、nacos 数据同步的原理,废话不多说,改 admin、bootstrap 相关的 yml 文件,然后启动,当然最重要的如果依赖了第三方工具,也要把第三方工具也启动。
zookeeper 数据同步
- 老规矩,先启动 admin 把 zk 对应的 listener 类打上断点,方便调试,这里对应的下图的类,启动时会先执行 run 方法,判断 zk 里面是否有 plugin、auth、metadata 这些数据,如果没有则去把数据同步到 zk 中,先从数据库中把数据查询出来,然后发布对应的事件。如果 zk 中已经存在,就什么都不干
初始化打印日志:2021-01-29 01:37:40.944 INFO 63954 --- [ain-EventThread] org.I0Itec.zkclient.ZkClient : zookeeper state changed (Disconnected) 2021-01-29 01:37:40.949 INFO 63954 --- [ main] org.I0Itec.zkclient.ZkClient : Waiting for keeper state SyncConn