Dubbo
什么是dubbo
Dubbo是阿里巴巴公司开源的一个高性能优秀的分布式服务框架。使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和Spring框架无缝集成。
Dubbo的架构
节点角色说明:
· Provider:暴露服务的服务提供方。
· Consumer:调用远程服务的服务消费方。
· Registry:服务注册与发现的注册中心。
· Monitor:统计服务的调用次调和调用时间的监控中心。
· Container:服务运行容器。
调用关系说明:
· 0.服务容器负责启动,加载,运行服务提供者。
· 1.服务提供者在启动时,向注册中心注册自己提供的服务。
· 2.服务消费者在启动时,向注册中心订阅自己所需的服务。
· 3.注册中心返回服务提供者地址列表给消费者,如果有变更,注册中心将基于长连接推送变更数据给消费者。
· 4.服务消费者,从提供者地址列表中,基于软负载均衡算法,选一台提供者进行调用,如果调用失败,再选另一台调用。
· 5.服务消费者和提供者,在内存中累计调用次数和调用时间,定时每分钟发送一次统计数据到监控中心。
使用方法
Dubbo采用全Spring配置方式,透明化接入应用,对应用没有任何API侵入,只需用Spring加载Dubbo的配置即可,Dubbo基于Spring的Schema扩展进行加载。
服务提供方使用dubbo发布服务,服务消费方引用dubbo服务。
并在提供方增加暴露服务配置<dubbo:service>,在消费方增加引用服务配置<dubbo:reference>。