dubbo基本认识

为什么要用dubbo

dubbo 主要是一个分布式服务治理解决方案,那么什么是服务治理?服务
治理主要是针对大规模服务化以后,服务之间的路由、负载均衡、容错机制、
服务降级这些问题的解决方案,而 Dubbo 实现的不仅仅是远程服务通信,
并且还解决了服务路由、负载、降级、容错等功能。

dubbo的亮点:

缓存:

dubbo 每次都要连 zookeeper?
是不是每次发起一个请求的时候,都需要访问注册中心
呢?作为一个设计者,你会怎么去解决这个问题。
答案很显然是通过缓存实现
在消费端的配置文件中指定如下路径

<dubbo:registry id="zookeeper" 
address="zookeeper://192.168.13.102:2181" file="d:/dubbo-server" />
支持多注册中心

配置多个注册中心

<dubbo:registry address="zookeeper://192.168.13.102:2181" 
id="registryCenter1"/>
<dubbo:registry address="zookeeper://192.168.13.102:2181" 
id="registryCenter2"/>

将服务注册到不同的注册中心
通过 registry 设置注册中心的 ID

<dubbo:service interface="com.gupaoedu.practice.LoginService" 
registry="registryCenter1" ref="loginService" />

消费端配置多个注册中心
实现的代码和服务端一样

支持多协议

Dubbo 对于 RPC 通信协议的支持,不仅仅是原生的 Dubbo 协议,它还
围绕着 rmi、hessian、http、webservice、thrift、rest

集成 Webservice 协议
webservice 是一个短链接并且是基于 http 协议的方式来实现的 rpc 框架。

Jar 包依赖
<dependency>
 <groupId>org.apache.cxf</groupId>
 <artifactId>cxf-rt-frontend-simple</artifactId>
 <version>3.3.2</version>
</dependency>
<dependency>
 <groupId>org.apache.cxf</groupId>
 <artifactId>cxf-rt-transports-http</artifactId>
 <version>3.3.2</version>
</dependency>
<dependency>
 <groupId>org.eclipse.jetty</groupId>
 <artifactId>jetty-server</artifactId>
 <version>9.4.19.v20190610</version>
</dependency>
<dependency>
 <groupId>org.eclipse.jetty</groupId>
 <artifactId>jetty-servlet</artifactId>
  <version>9.4.19.v20190610</version>
</dependency>
修改 application.xml


<dubbo:protocol name="dubbo" port="20880" />
<dubbo:protocol name="webservice" port="8080" server="jetty"/>

<dubbo:service interface="com.gupaoedu.practice.LoginService"
registry="registryCenter1"
ref="loginService" protocol="dubbo,webservice"/>
添加多协议支持,一个服务可以发布多种协议的支持,也可以实现不同服务
发布不同的协议
启 动 服 务 之 后 , 可 以 使 用 :
http://localhost:8080/com.gupaoedu.practice.LoginService?wsdl 来获得Webservice 的 wsdl 描述文档

客户端使用 webservice 请求服务
  1. 客户端的配置 jar 包依赖
  2. 配置多个协议支持,实现方式和服务端一致
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容