Dubbo -- 系统学习 笔记 -- 示例 -- 多协议

Posted limeOracle

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Dubbo -- 系统学习 笔记 -- 示例 -- 多协议相关的知识,希望对你有一定的参考价值。

Dubbo -- 系统学习 笔记 -- 目录

示例

  想完整的运行起来,请参见:快速启动,这里只列出各种场景的配置方式

多协议

可以自行扩展协议,参见:协议扩展

(1) 不同服务不同协议

比如:不同服务在性能上适用不同协议进行传输,比如大数据用短连接协议,小数据大并发用长连接协议。

  XML : provider.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
    http://www.springframework.org/schema/beans/spring-beans.xsd
    http://code.alibabatech.com/schema/dubbo
    http://code.alibabatech.com/schema/dubbo/dubbo.xsd"
>       <dubbo:application name="world"  />     <dubbo:registry id="registry" address="10.20.141.150:9090" username="admin" password="hello1234" />       <!-- 多协议配置 -->     <dubbo:protocol name="dubbo" port="20880" />     <dubbo:protocol name="rmi" port="1099" />       <!-- 使用dubbo协议暴露服务 -->     <dubbo:service interface="com.alibaba.hello.api.HelloService" version="1.0.0" ref="helloService" protocol="dubbo" />     <!-- 使用rmi协议暴露服务 -->     <dubbo:service interface="com.alibaba.hello.api.DemoService" version="1.0.0" ref="demoService" protocol="rmi" />   </beans>

(2) 多协议暴露服务

比如:需要与http客户端互操作

  XML : provider.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
      http://www.springframework.org/schema/beans/spring-beans.xsd
      http://code.alibabatech.com/schema/dubbo
      http://code.alibabatech.com/schema/dubbo/dubbo.xsd"
>       <dubbo:application name="world"  />     <dubbo:registry id="registry" address="10.20.141.150:9090" username="admin" password="hello1234" />       <!-- 多协议配置 -->     <dubbo:protocol name="dubbo" port="20880" />     <dubbo:protocol name="hessian" port="8080" />       <!-- 使用多个协议暴露服务 -->     <dubbo:service id="helloService" interface="com.alibaba.hello.api.HelloService" version="1.0.0" protocol="dubbo,hessian" />   </beans>

啦啦啦

以上是关于Dubbo -- 系统学习 笔记 -- 示例 -- 多协议的主要内容,如果未能解决你的问题,请参考以下文章

Dubbo -- 系统学习 笔记 -- 示例 -- 参数验证

Dubbo -- 系统学习 笔记 -- 示例 -- 泛化引用

Dubbo -- 系统学习 笔记 -- 示例 -- 分组聚合

Dubbo -- 系统学习 笔记 -- 示例 -- 结果缓存

Dubbo -- 系统学习 笔记 -- 示例 -- 负载均衡

Dubbo -- 系统学习 笔记 -- 示例 -- 多协议