Dubbo之旅--扩展协议

在实际工作中运用 dubbo 的时候 , 以上系列的文章基本上能够满足项目的基本需求 , 当然 , 对于一些特殊的需求 Dubbo 可以对其进行扩展 ,Dubbo 拥有者丰富的扩展内容 , 这次主要将会带领大家去感受一下 Dubbo 的协议扩展和注册中心扩展 .

 

        首先要说的是协议扩展.

 

        为什么要扩展协议呢?什么样的需求需要我们去扩展它?

 

      (1) 不同服务不同协议  

 

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

 

consumer.xml

 


<?xmlversion="1.0"encoding="UTF-8"?>

<beansxmlns=" 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:applicationname="helloworld" />

   <dubbo:registryid="registry"address="127.0.0.1:9090"username="admin"password="helloworld"/>

 

    <!-- 多协议配置 -->

   <dubbo:protocolname="dubbo"port="20880"/>

   <dubbo:protocolname="rmi"port="1099"/>

 

    <!-- 使用dubbo协议暴露服务 -->

   <dubbo:serviceinterface="com.alibaba.hello.api.HelloService"version="1.0.0"ref="helloService"protocol="dubbo"/>

    <!-- 使用rmi协议暴露服务 -->

   <dubbo:serviceinterface="com.alibaba.hello.api.DemoService"version="1.0.0"ref="demoService"protocol="rmi"/>

 

</beans>

 


        以上例子我们扩展了两个协议,一个是dubbo协议,另一个是rmi协议.读者可以根据自己实际的需求来根据具体的协议来调用具体的服务.

 

(2) 多协议暴露服务

 

  需求:需要与http客户端互操作

 


consumer.xml

 


<?xmlversion="1.0"encoding="UTF-8"?>

<beansxmlns=" 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:applicationname="helloworld" />

   <dubbo:registryid="registry"address="127.0.0.1:9090"username="admin"password="helloworld"/>

 

    <!-- 多协议配置 -->

   <dubbo:protocolname="dubbo"port="20880"/>

   <dubbo:protocolname="hessian"port="8080"/>

 

    <!-- 使用多个协议暴露服务 -->

   <dubbo:serviceid="helloService"interface="com.alibaba.hello.api.HelloService"version="1.0.0"protocol="dubbo,hessian"/>

 

</beans>

 


  通过多个协议暴露服务,相关的消费者可以通过此多种协议来访问此服务.

 


  以上协议扩展的内容在特定的需求下需要进行扩展,接下来的文章我们将会着重来说明注册中心的扩展.注册中心的扩展相对于协议的扩展而言在项目的使用频率更高,而且能够满足我们的各种需求.

版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值