tonyiscoding
tonyiscoding
 thank you very much !!!!
1. RegistryService 这个接口有点冗余, 职责不单一了, 并且其抽象层实现会导致 client 启动一个订阅者也浪费一个线程持续阻塞在服务发布队列上, 这样是否会导致资源的浪费?  2. 服务发布操作 AbstractRegistryService#doPublish0()启动了一个线程池去进行发布; 其实这个操作可以延迟到 server.start() 去做; 这里我认为存在一个风险: 如果服务publish了,但是服务本身没有起来, ( _因为我并没有看到有 registerServer连接到 server 的代码, 意味着服务可用性无法通过 RPC连接来检查, 只有一个 RegisterService 来检查_) 那这时候可能就会导致...
个人提出一个在学习 Jupiter 过程中的疑惑 我看到代码中 DefaultClient#watchConnection(Directory ) 这个方法实现内匿名实现了一个 JConnector.ConnectionWatcher; 其中重写的start() 方法用到了一些同步机制让我感到不解: 1. 为何需要通过这样的线程唤醒来做同步? 2. 是为了应对什么样的场景呢? 以下是我的个人的一些猜测: 1. 为了应对一个远程地址同时发布两个服务? 2. 为了应对远程服务出现了 register -> deregister -> register 这样的操作?  如果有阅读过代码或者对分布式服务注册发现熟练的大佬能帮忙解惑, 那将感激不尽了