QTLin
QTLin
我也有点疑惑,虽然有watcher来监听节点的变化,但是如果是永久节点,那么服务如果宕机了,这些不可用的服务节点没有被手动删除,可能就会导致调用方调用失败。 我的看法是应该**创建成临时节点**,如果服务者程序意外宕机,在 Session 超时之后,也能自动删除服务节点,自动下线有问题的服务。 --——------------------------ 我看了看 Dubbo 中的 ZookeeperRegistry 的 doRegister 方法,Dubbo 中是采用分类设置的方式,**如果是 Root、Service、Type 的节点就是持久节点,如果是服务对应的 URL 则是临时节点。** eg: dubbo(root)/com.example.service(service)/providers(type)/127.0.0.1(url) 所以当某个服务器宕机后,就会将其对应的URL节点删除。 ----——------------------------------ 再次查看了 Guide 哥的框架源码,发现**有一个 CustomShutdownHook 钩子类**,其中的 clearAll() 方法写到: CuratorUtils.clearRegistry(CuratorUtils.getZkClient(), inetSocketAddress);...
RpcReference是在After中来完成服务的调用,RpcReference是在Before中完成服务的注册。 就是为了**让RpcService在被调用之前完成服务注册(就是在Before中实现)**,避免RpcReference在服务还没注册之前就调用了服务。 不知道对不对。:-)
米青女少 !
Java版(双向队列模拟栈) -------------------- ```java class Solution { public int calculate(String s) { Deque deque = new LinkedList(); for(int i = 0; i < s.length(); i++){ //入队的时候就把空格排除在外,省的接下来再额外判断 if(s.charAt(i) != ' '){ deque.addLast(s.charAt(i));...
### 已经拿小本本记录了
check in