Dubbo配置直连


title: Dubbo配置直连 date: 2017-08-31 16:31:30 tags:

  • dubbo
  • 注册中心
  • 直连
  • registry

categories: dubbo

背景

部分小伙伴由于某些原因不能再公司开发。 那么现在提供dubbo直连的相关配置

步骤

  1. 使用在application-dubbo文件中

    1. 方案 换用公网zookeeper (如果网络受限请忽视)
    <dubbo:registry address="XXX:24681"  protocol="zookeeper" id="f6-registry"  group="${dubbo.group}" default="false"/>
    复制代码
    1. 使用redis注册中心(否决,依赖老版本commons-pool,系统中不存在,需要引入新依赖)
    2. 使用组播注册中心
    <dubbo:registry address="224.5.6.7:1234"  protocol="multicast" id="f6-registry"  group="${dubbo.group}" default="false"/>
    复制代码

    同时在jvm参数中增加-Djava.net.preferIPv4Stack=true 4. 使用dubbo注册中心(需要自己其单独服务) 不使用注册中心,配置成N/A 但是需要几个地方注释(注意不要提交!) ```diff Index: biz-service-impl/src/main/resources/application-dubbo.xml IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== --- biz-service-impl/src/main/resources/application-dubbo.xml (revision 24217) +++ biz-service-impl/src/main/resources/application-dubbo.xml (revision ) @@ -12,15 +12,15 @@ <dubbo:protocol name="dubbo" port="20881" id="f6-protocol" serialization="java"/> <dubbo:provider timeout="30000" group="${dubbo.group}" retries="0" owner="qixiaobo" id="f6-provider" filter="customException"/>

       -   <dubbo:registry address="${zookeeper.url}"  protocol="zookeeper" id="f6-registry"  group="${dubbo.group}" default="false"/>
       +   <dubbo:registry address="N/A"  id="f6-registry"  group="${dubbo.group}" default="false"/>
    
    
       -   <dubbo:reference id="carZoneAgentService" interface="com.f6car.api.service.AgentService" group="${dubbo.group}" registry="f6-registry" check="false">
       +<!--    <dubbo:reference id="carZoneAgentService" interface="com.f6car.api.service.AgentService" group="${dubbo.group}" registry="f6-registry" check="false">
               <dubbo:method name="bsdService" cache="lru" mock="true"/>
               <dubbo:method name="accService" cache="lru" mock="true"/>
               <dubbo:method name="atService" cache="lru" mock="true"/>
               <dubbo:method name="carService" cache="lru" mock="true"/>
       -   </dubbo:reference>
       -   <import resource="classpath*:application-dubbo-supplychain.xml"/>
       +   </dubbo:reference>-->
       +   <!--<import resource="classpath*:application-dubbo-supplychain.xml"/>-->
    
        </beans>
       \ No newline at end of file
       Index: biz-rmi-impl/src/main/java/com/air/tqb/dubbo/PublishDubboBean.java
       IDEA additional info:
       Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
       <+>UTF-8
       ===================================================================
       --- biz-rmi-impl/src/main/java/com/air/tqb/dubbo/PublishDubboBean.java  (revision 24217)
       +++ biz-rmi-impl/src/main/java/com/air/tqb/dubbo/PublishDubboBean.java  (revision )
       @@ -32,7 +32,7 @@
                }
                builder.setLazyInit(false);
                builder.addPropertyValue("interfaceClass", clazz.getInterfaces()[0]);
       -        builder.addPropertyReference("registry", "f6-registry");
       +        builder.addPropertyValue("register", false);
                builder.addPropertyReference("provider", "f6-provider");
                builder.addPropertyReference("protocol", "f6-protocol");
                builder.addPropertyReference("application", "f6-application");
       ```
    复制代码

    推荐使用最后一个方案

  2. 在调用的客户端代码中直接在对应的interface中增加url(此为样例,请修改对应的项目中的url)

    <dubbo:reference id="carZoneAgentService" interface="com.f6car.api.service.AgentService" group="${dubbo.group}" registry="f6-registry" check="false" url="dubbo://127.0.0.1:20881">
    复制代码
  3. 可以使用telnet来checkdubbo服务是否安好 (端口为20881)

    telnet localhost 20881
    复制代码

    比如

    dubbo>ls
    com.air.tqb.service.base.MaintainTypeService
    com.air.tqb.service.base.BasSearchService
    com.air.tqb.service.base.OrgGroupWxService
    com.air.tqb.service.wash.CarWashService
    com.air.tqb.service.staff.StaffService
    com.air.tqb.service.report.EmployeePerformanceService
    com.air.tqb.service.item.ItemService
    复制代码
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值