zoukankan      html  css  js  c++  java
  • Dubbo,Zookeeper入门

    • Zookeeper
    1. 功能:分布式应用程序协调服务,集群管理者,监视集群各个节点状态-->提交反馈-->进行下一步合理操作;
    2. 机制:目录方式,当目录节点发生变化(数据改变,被删除,子节点增加删除)时,zookeeper会通知客户端。
    3. 工作原理:核心原子广播,保证server同步,实现是Zab协议:两种模式:恢复模式(选主)和广播模式(同步),服务器或领导者崩溃选主。
    4. 状态:
      • LOOKING:server不知道leader是谁,正在搜寻;
      • LEADING:当前server是选举出来的leader;
      • FOLLOWING:leader选举出来,当前server与之同步;
    • Dubbo
    1. 功能:高性能服务框架:提供服务(把一些业务分离,变成服务,供他人调用)
    2. 原理:RPC远程服务调用。SOA服务治理,Reactor模型通信框架:tcp长连接
    3. 角色:provider(服务提供者),consumer(调用服务的消费者),registry(注册中心),monitor(统计服务调用时间、次数的监控中心),container服务运行容器
    4. 关系:
      • container负责启动、加载、运行provider
      • provider启动时,向registry注册提供的服务
      • consumer启动时,向registry订阅所需的服务
      • registry返回provider的地址列表给consumer,如果有变更,registry将基于长连接推送变更数据给consumer
      • consumer从provider的地址列表中,基于软负载均衡算法,选一台provider调用,调用失败选另一台。
      • provider和consumer,在内存累计调用次数、时间定时每分钟发送统计数据到monitor
            
    以上是dubbo和zookeeper的理论概念,实践可参考我的github上面的两个小例子。
    项目描述:两个项目分别是生产者项目和消费者项目,为了省事用springboot搭建,注意运行时可以把生产者项目打包到本地仓库,方便消费者项目的调用。
                    
  • 相关阅读:
    输入和输出插头
    MCB2300的CTM1050(CAN)
    POJ读书笔记2.1 —— 鸡兔笼带
    Java程序猿的书面采访String3
    JavaScript:undefined And null差异
    设计模式——结构模型
    Qt移动应用开发(六):QML与C++互动
    让我们来谈谈合并排序算法
    安装Eclipse完PyDev插件中没有出现
    汉顺平html5课程分享:6小时制作经典的坦克大战!
  • 原文地址:https://www.cnblogs.com/handsomecui/p/8822780.html
Copyright © 2011-2022 走看看