Dubbo架构

来源:互联网 发布:淘宝如何买二手东西 编辑:程序博客网 时间:2024/06/05 00:28

DUBBO是一个分布式服务架构,致力于提供高性能和透明化的RPC远程服务调用方案,是阿里巴巴SOA服务化治理方案的核心框架。


>>实现数据跨系统的调用(如使用dubbo),必须实现序列化接口,serializable


架构 图。


使用Dubbo进行远程调用实现服务交互,它支持并封装多种协议,因此只需要在配置中指定使用的协议即可,保证了服务提供方和服务消费方之间的透明。


Dubbo的客户端和服务端有三种连接方式,分别是:广播,直连,和使用zookeeper注册中心。


直连方式:一般在开发环境中使用,生产环境很少使用。

服务端配置:注册中心地址:N/A

<!-- 配置dubbo --><!-- 提供方应用信息,用于计算依赖关系 --><dubbo:application name="xxx-service" /><dubbo:registry address="N/A" /><!-- 用dubbo协议在20880端口暴露服务 --><dubbo:protocol name="dubbo" port="20880" /><!-- 声明需要暴露的服务接口 --><dubbo:service interface="xxx.TestService"ref="testServiceImpl" />

客户端配置:从指定的url中获取服务

<!-- 配置dubbo服务 --><dubbo:application name="xxx-web" /><!-- 声明要调用的服务,timeout是设置连接超时最长时间,如果不设置,默认一秒超时,重试3次 --><dubbo:reference interface="xxx.TestService"id="testService" timeout="1000000" url="dubbo://127.0.0.1:20880"/>  




Dubbo注册中心方式:

服务端配置:使用zookeeper注册中心

<!-- 配置dubbo --><!-- 提供方应用信息,用于计算依赖关系 --><dubbo:application name="xxx-service" /><dubbo:registry protocol="zookeeper" address="192.168.37.161:2181" /><!-- 用dubbo协议在20880端口暴露服务 --><dubbo:protocol name="dubbo" port="20880" /><!-- 声明需要暴露的服务接口 --><dubbo:service interface="xxx.TestService"ref="testServiceImpl" />



客户端配置:指定zookeeper注册中心

<!-- 配置dubbo服务 --><dubbo:application name="xxx-web" /><!-- 使用zookeeper注册中心 --><dubbo:registry protocol="zookeeper" address="192.168.37.161:2181" /><!-- 声明要调用的服务,timeout是设置连接超时最长时间,如果不设置,默认一秒超时,重试3次 --><dubbo:reference interface="xxx.TestService"id="testService" timeout="1000000" />



Dubbo的Monitor监控中心




待续……






0 0