Dubbo本地调试的几种方式总结

目录
  • 前言
  • 开发调试阶段
  • 已发布测试阶段
  • 总结

前言

在正常的dubbo开发迭代过程,本地调试是比较常见的情况,一般来说,主要以下两种情况我们需要本地调试

  • dubbo服务开发调试阶段:

    这个阶段我们一般不希望服务被别人访问

  • dubbo服务已经发布测试环境,但是某个服务出了问题希望本地断点定位:

    本地启动的应用不希望对外暴露,但是又需要对特定的服务路由到本地

开发调试阶段

一、禁止注册到配置中心 Dubbo从2.0.8开始增加了协议注册开关,我们可以通过关闭注册开关,关闭服务注册

<dubbo:registry address="xxxxxx" register="false"/>

二、版本号区分

在Provider配置版本号1.0.0

<dubbo:provider timeout="10000" threadpool="fixed" threads="100"  accepts="1000" version="1.0.0"/>

Consumer 配置和provider相同的version 1.0.0

<dubbo:consumer version="1.0.0" />

三、通过url直接访问

服务方不注册到注册中心

<dubbo:registry address="xxxxxx" register="false"/>

consumer通过设置关联服务的URL地址,可以实现直连本地dubbo服务

<dubbo:reference id="xxxxService" interface="xxxxx.xxxxService" protocol="dubbo" url="dubbo://127.0.0.1:10000"/>

已发布测试阶段

在dubbo提供的管理后台,通过服务治理的几种方式可以实现流量的重新分布;dubbo支持条件路由、标签路由、权重以及动态配置

一、条件路由 Dubbo提供动态创建条件路由的服务治理能力,可以在无需重启应用的情况下,根据请求发起方、请求的方法条件路由。详细配置可以参考官方文档

二、动态配置 dubbo也支持通过动态规则轻松实现请求的重新分布 例如: 需要对 com.xxxx.api.xxService服务下的所有方法请求路由到本地,我们只需简单创建一个动态规则

  • service unique Id 配置为com.xxxx.api.xxService
  • 规则内容模板如下
configVersion: v2.7
scope: application/service
key: app-name/group+service+version
enabled: true
configs:
  - addresses: [0.0.0.0]  # 0.0.0.0 for all addresses
    side: consumer        # effective side, consumer or addresses
    parameters:
      timeout: 6000  
  • 配置的时候我们只需要把本地服务ip配置即可,更多的参数选项配置可以参考官方文档动态配置

总结

到此这篇关于Dubbo本地调试的几种方式的文章就介绍到这了,更多相关Dubbo本地调试内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • dubbo的配置文件详解(推荐)

    一.dubbo常用配置 <dubbo:service/> 服务配置,用于暴露一个服务,定义服务的元信息,一个服务可以用多个协议暴露,一个服务也可以注册到多个注册中心. eg.<dubbo:service ref="demoService" interface="com.unj.dubbotest.provider.DemoService" /> <dubbo:reference/> 引用服务配置,用于创建一个远程服务代理,一个引用

  • dubbo 管理控制台安装和使用详解

    关于dubbo的配置使用已经配置好了简单的示例,下面先记录下dubbo管理控制台的安装和使用(用的zookeeper的注册中心),在网上找了些按照示例 dubbo管理控制台开源部分主要包含: 提供者  路由规则  动态配置  访问控制  权重调节  负载均衡  负责人,等管理功能. 1.下载dubbo 我上传地址:http://download.csdn.net/detail/liweifengwf/7784901 官方地址:http://code.alibabatech.com/mvn/rel

  • 使用docker部署dubbo项目的方法步骤

    1.首先用springboot构建一个简单的dubbo测试程序,并引入相关依赖 编写公共接口api 编写provider实现UserSvice的方法,并暴露服务 编写provider的配置文件 编写Consumer 通过调用provider的服务获取user信息并返回 consumer的配置文件 测试程序已完成 在本地启动,看看程序是否能正常调用服务 启动zookeeper 先启动provider端再启动consumer端 通过dubbo的控制台看到我们的服务已经注册成功 通过访问本地,看到我们

  • Dubbo本地调试的几种方式总结

    目录 前言 开发调试阶段 已发布测试阶段 总结 前言 在正常的dubbo开发迭代过程,本地调试是比较常见的情况,一般来说,主要以下两种情况我们需要本地调试 dubbo服务开发调试阶段: 这个阶段我们一般不希望服务被别人访问 dubbo服务已经发布测试环境,但是某个服务出了问题希望本地断点定位: 本地启动的应用不希望对外暴露,但是又需要对特定的服务路由到本地 开发调试阶段 一.禁止注册到配置中心 Dubbo从2.0.8开始增加了协议注册开关,我们可以通过关闭注册开关,关闭服务注册 <dubbo:r

  • iOS开发中UIWebView的加载本地数据的三种方式

    UIWebView是IOS内置的浏览器,可以浏览网页,打开文档 html/htm pdf docx txt等格式的文件. safari浏览器就是通过UIWebView做的. 服务器将MIME的标识符等放入传送的数据中告诉浏览器使用那种插件读取相关文件. uiwebview加载各种本地文件(通过loadData方法): UIWebView加载内容的三种方式: 1 加载本地数据文件 指定文件的MIMEType 编码格式使用@"UTF-8" 2加载html字符串(可以加载全部或者部分html

  • vue data引入本地图片的两种方式小结

    我就废话不多说了,大家直接看吧! 第一种 <template> <img :src="imgsrc"> </template> <script> export default { data () { return { imgsrc: require('../../images/ICON-electronicbilling.png') } } } </script> 第二种 <template> <img :s

  • C#获取本地IP的四种方式示例详解

    1.第一种方式 采用System.Net.Dns的GetHostAddress的方式,具体请看代码: /// <summary> /// 网络不通畅可以获取 /// 不过能获取到具体的IP /// </summary> /// <returns></returns> public static List<IPAddress> GetByGetHostAddresses() { try { IPAddress[] adds = Dns.GetHos

  • v-for循环中使用require/import关键字引入本地图片的几种方式

    目录 问题描述 方式一(后端返回图片URL) 方式二(前端使用require) 方式三(前端使用import) 总结 问题描述 我们做项目中,常常需要把图片呈现到页面上,一般来说有以下几种方式 方式一(后端返回图片URL) 这种方式就是后端返回图片的url地址,我们直接img标签的src属性绑定imgUrl即可.如下代码: <div class="item" v-for="(item, index) in apiArr" :key="index&qu

  • 使用VBS浏览本地文件的3种方式,获取完整路径

    因为系统组件差异,所以代码也有不同文章最后我们给出一个通用的代码 XP下: Function BrowseForFile( ) ' Select File dialog based on a script by Mayayana ' Known issues: ' * Tree view always opens Desktop folder ' * In Win7/IE8 only the file NAME is returned correctly, the path returned w

  • 反编译jar实现的三种方式

    目录 工具准备 三种方式 1.使用fernflower反编译之后再编译 2.使用javassist动态修改class 3.通过引入原来的jar包,修改代码(推荐) 总结 工具准备 相同大版本的jdk idea fernflower.jar javassist.jar 或 本地下载地址 jd-gui 或 本地下载地址 三种方式 1.使用fernflower反编译之后再编译 把要反编译的.jar修改成.zip java -jar fernflower.jar classes.zip zzCode/

  • 详解Python下载图片并保存本地的两种方式

    一:使用Python中的urllib类中的urlretrieve()函数,直接从网上下载资源到本地,具体代码: import os,stat import urllib.request img_url="https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1516371301&di=d99af0828bb301fea27c2149a7070" \ "d44&am

  • git版本库介绍及本地创建的三种场景方式

    目录 1.Git版本库介绍 2.创建本地版本库 场景一:创建一个空的本地版本库. 场景二:项目中已存在文件时,创建该项目的本地版本库. 场景三:在GitHub网站上创建仓库,克隆到本地. 1.Git版本库介绍 每个Git版本控制系统的主机中,都可以包含若干个本地版本库,一般情况下一个本地版本库对应一个项目,用于对某个特定项目中的本地文件进行版本管理.其实,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改.删除等操作Git都能跟踪到,以便任何时刻都可以追踪历史

  • uniapp打包安卓App的两种方式(云打包、本地打包)方法详解

    在HBuilder上对APP提供了两种打包方式,云打包和本地打包,下面主要对这两种打包方式做个介绍 两者的区别:云打包相对简单,但是每天最多只能打包五次,而且在高峰期打包时间可能会很长,本地打包相对比较复杂,但是不限制次数,打包时间也短 一. uniapp云打包安卓App: 只需要设置相应参数即可.比较复杂的地方可能就是证书,如果你是测试包,Android的话直接选择共用证书即可,ios则需要申请相应证书,申请证书的具体方法官方也介绍的很清楚了,就不赘述了. 二. uniapp本地打包安卓App

随机推荐