Spring Boot微服务 - 处理影响其他微服务的变化

时间:2017-03-03 05:23:46

标签: spring spring-boot spring-cloud microservices spring-cloud-netflix

我只想简要介绍一下在提问之前我想做什么

我正在尝试使用spring boot构建微服务 - 我需要使用许多Spring Cloud Netflix功能,例如Service Discovery(Eureka),Circuit Breaker(Hystrix),Intelligent Routing(Zuul)和Client Side Load Balancing(Ribbon) )等 - 我计划使用docker容器来使用docker compose,docker swarm(或kubernetes)等工具进行部署和管理。

通过这种配置 - 我们有3个微服务(让我们假设),服务A,服务B和服务C,这些是由不同开发人员开发的独立微服务,假设这些开发人员不同步,developer1承诺一些对服务A的更改可能会破坏其他2个服务B和C的功能(这些服务是出于某种目的调用服务A),但服务B和C不知道服务A中所做的更改。 **如何有效地处理这样的可能情况? ** - 提前谢谢

1 个答案:

答案 0 :(得分:1)

你永远不应该倒退。 如果更改将破坏向后兼容性,则对服务进行版本化。

我在博文中介绍了如何在http://tech.asimio.net/2017/03/06/Multi-version-Service-Discovery-using-Spring-Cloud-Netflix-Eureka-and-Ribbon.html使用Spring Cloud Netflix EurekaRibbon注册和发现服务的多个版本。