Spring Cloud 调试技巧,可以使用其他环境的服务,同时又不暴露自己本地的服务

存在的问题

平时我们在本地调试的时候,如果涉及到多个服务的时候,我们需要启动所有相关的服务,这是一个很不爽的过程。那么有没有只需要启动我要调试的服务,其他服务直接调用测试环境或者开发环境的就可以了呢?

常规我们的做法

把application.yml 中的 active 改成test

就可以享受测试环境的所有的服务。但是这会有一个问题,你的服务同时也暴露出去,测试人员在测试的时候调用到你本地不稳定的服务(可能在开发中)。以为服务又出bug 或者崩了

测试同事此时的心情应该是跟下面一样的:开发小哥,什么垃圾系统这么不稳定,来来来,我们先出去干一架

真是世界上没有免费的午餐。这个时候有没有更好的解决方案呢?我可以使用线上的服务,我又不暴露我本地的服务给测试环境。
dubbo 是有的,Spring Cloud 不可能没有啊,查了一下

还真有。扯淡那么多,赶紧给我来重点。。。。。。

Talk is cheap.Show me your code

完美做法

  1. 在配置文件上配置
spring.cloud.service-registry.auto-registration.enabled=false
  1. 在你的启动类配置
 @EnableDiscoveryClient(autoRegister=false)

以上两种方案,选其一。

好了完美收工,祝你在spring clould 的开发的路上幸福,我又要去小程序《面试bat》上刷一波面试题了

本人博客:http://blog.interviewbat.com/

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章