Dubbo入门(一)

  1. Dubbo是一款分布式服务框架,高性能和透明化的rpc远程服务调用方案,SOA服务治理方案
  2. Dubbo入门(一)
  • 重点:

 

  1. Provider:暴露服务的服务提供方。
  2. Consumer:调用远程服务的服务消费方。
  3. Registry:服务注册与发现的注册中心
  4. Monitor:统计服务的调用次数和调用时间的监控中心
  • 调用流程
  1. 服务容器负责启动,加载,运行服务提供者。
  2. 服务提供者在启动时,想注册中心注册自己提供的服务
  3. 服务消费者在启动时,向注册中心订阅自己所需要的服务,
  4. 注册中心返回服务提供者地址列表给消费者,如果有变更,注册中心将基于长连接推送变更数据给消费者
  5. 服务消费者,从提供者地址列表中,基于软负载均衡算法,选一台提供者进行调用,如果调用失败,再选用另外一台调用。
  6. 服务消费者和提供者,在内存中累计调用次数和调用时间,定时发送一次统计数据到监控中心
  • Dubbo提供的注册中心有四种:Mukticast注册中心,Zookeeper注册中心,Redis注册中心,Simple注册中心。
  • Dubbo优点:
  1.  透明化的远程方法调用,像调用本地方法一样调用远程方法:只需要简单配置,没有api侵入。
  2. 软负载均衡及容错机制,可在内网代替nginx lvs等硬件负载均衡器
  3. 服务注册中心自动注册和配置管理,不需要写死服务提供者地址,注册中心基于接口名自动查询提供者IP,使用类似zookeeper等分布式协调服务作为服务注册中心,可以将绝大部分配置移入zookeeper集群。
  4. 服务接口监控与治理,Dubbo-admin与Dubbo-monitor提供了完善的服务接口管理与监控功能,针对不同应用的不同接口,可以进行多版本,多协议,多注册中心管理。
  • 缺点:只支持Java语言!
  1. 安装zookeeper后启动,本次demo的dubbo注册中心采用的是zookeeper,ZK是一个分布式的服务框架,是树形的目录服务的数据存储,能做到集群管理数据,可以做Dubbo的注册中心。当提供者出现断电等异常停机时,ZK注册中心能自动删除提供者信息,等提供者重启恢复时,能自动恢复注册数据,以及订阅请求。
  2. 启动dubbo时要先启动zookeeper,关于zookeeper可以看我另外一篇博客:https://blog.****.net/chaoyue12312/article/details/81208674