赞
踩
typora-copy-images-to: mdpic typora-root-url: mdpic
场景:分布式服务,多人开发,大家的服务都在DEV环境注册,这时别人就会通过注册中心调用到我们本地发布的服务,但我们本地服务正在开发中,可能bug很多,服务跑跑停停,这时如果别人的请求轮询到我们本地服务,就会出现异常。
为了不让自己本地服务影响线上环境,可以配置dubbo点对点服务,跳过注册中心(直连提供者 | Apache Dubbo)。
配置主要分两个部分
1.提供者不注册到注册中心
2.消费者配置点对点调用
本文工程基于SpringBoot开发,配置针对SpringBoot。
禁止服务注册到注册中心,在提供者的application.properties中配置:
dubbo.registry.register=false
但是在团队开发的时候发现,有时候不小心就把本地文件提到git上了,影响别人,所以可以使用JVM启动变量的方式
在JVM参数中配置,这样不需要修改文件,不会受git影响
-Ddubbo.registry.register=false
idea中可以针对项目配置:
可以配置JVM启动参数,配置到xml文件等。服务比较多的话,可以配置到properties文件里:
- #格式:服务接口的全路径=接口地址
- com.xx.Service1=dubbo://localhost:20880
- com.xx.Service2=dubbo://localhost:20880
- com.xx.Service3=dubbo://localhost:20880
在JVM启动参数里添加启动变量如下,默认会到${user.home}下去找${user.home}/dubbo-resolve.properties(我自己修改的文件名是dubbo-local.properties):
-Ddubbo.resolve.file=dubbo-local.properties
如果配置文件不在${user.home},可以指定文件全路径
-Ddubbo.resolve.file=D:\workspace\myproject\dubbo-local.properties
如果每个项目都不同,也可以用idea对每个项目单独配置:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。