• Dubbo本地开发技巧


    背景

    作为后端服务负载、前后分离的主要手段,dubbo在业界中使用率还比较高。随着Dubbo系统的增多,本地开发、调试就出现了麻烦之处

    直接在开发本地起同样一份服务

    由于Dubbo采用负载均衡的策略,多次请求的情况下总会随机一次到本地的服务上,有点儿看命的感觉。

    修改Group

    作为Dubbo支持的分Group策略,把各自开发人员独立注册一个Gruop是可行的。这样需求把Consumer端和provider端同步进行修改,稍微有点儿麻烦。

    而且还是会想注册中心注册一份服务列表。

    直连

    直连就是不向注册中心注册服务,防止测试环境的Dubbo请求分配到本地开发服务器上。

    1. 修改服务提供者配置文件

      <dubbo:registry protocol="zookeeper" address="${dubbo.address}" file=".dubbo-registry/dubbo-registry.properties"  register="false"/>
      

      其中register="false"是主要起作用的配置,他的意思就是说,在本地起服务,不想注册中心注册服务

      这块,以后会配置到filter中,dev.properties默认为false,test默认未true。以后测试环境部署test的配置文件

    2. 增加默认直连配置文件

      在2.0以上版本自动加载${user.home}/dubbo-resolve.properties文件,不需要配置。

      ${user.home}指的是当前操作系统用户目录,如 Win7系统 Administrator的用户目录就是 C:UsersAdministrator
      mac就是/Users/luoaz 之类的。

      配置内容如下

        com.ai.trial.modules.trial.service.TlAccusedProcessService=dubbo://localhost:21006
        com.ai.trial.modules.trial.service.TlProcessService=dubbo://localhost:21006
    

    通过以上配置,指定的服务就不在去注册中心找了,而是直接请求配置路径,dubbo://localhost:21006,其他未配置的再去配置中心找。

    这样可以很方便的进行调试了。

    ps:如果懒省事儿,可以把所有的服务全都声明一遍,以后就不需要管这个了
  • 相关阅读:
    VS中Debug和Release两个版本的区别
    Activex、OLE、COM、OCX、DLL之间的区别
    解决 C/C++ 程序执行一闪而过的方法
    调用规范stdcall、cdecl、fastcall、thiscall 、naked call的汇编理解
    Windows的MAX_PATH
    Servlet学习笔记(1)
    Eclipse使用JDBC小案例
    Oracle DB 总结(SQL)
    利用JS写一个计算平方的网页
    CSS部分语法1
  • 原文地址:https://www.cnblogs.com/luoaz/p/8017028.html
Copyright © 2020-2023  润新知