开发人员如何解决 Spring Cloud 服务冲突和实例乱窜?
作者:zlt2000 原文:https://www.cnblogs.com/zlt2000/p/11459390.html?utm_source=tuicool&utm_medium=referral 一、背景 在我们开发微服务架构系统时,虽然说每个微服务都是孤立的可以单独开发,但实际上并非如此,要调试和测试你的服务不仅需要您的微服务启动和运行,还需要它的上下文服务、依赖的基础服务等都要运行;但如果你的系统服务数和依赖比较多呢,那就是一个比较棘手的问题!有没有办法能提高开发效率呢? 如上图所示,我们能不能用 服务器把所有的服务都部署 起来,然后开发 只在本地运行自己所负责开发的服务 ,因为需要依赖其他服务所以本地启动的服务也需要注册到公共的注册中心里; 例子中业务服务B有3台实例注册到注册中心里 分别是:服务上的、开发A与开发B自己本机启动的 但是这样做又会出现新的问题: 服务会冲突乱窜 ,意思就是开发A在debug自己的业务服务B服务的时候可能请求会跳转到其他人的实例上(服务器、开发B) 二、解决思路 解决这个服务乱窜问题有一个比较优雅的方式就是自定义负载均衡规则,主要实现以下目标: 普通用户 访问服务器上的页面时,请求的所有路由只调用服务器上的实例 开发A 访问时,请求的所有路由优先调用开发A本机启动的实例,如果没有则调用服务器上的实例 开发B 访问时同上