假设我在云上部署了微服务架构中的UserService。有一个服务发现,用于将请求路由到不同的UserService主机。
如果我有两个不同版本的UserService。让我们说 user-service-1.0 和 user-service-2.0 ,部分客户端仍然应该使用旧版本,然后如何在微服务架构中管理它。
答案 0 :(得分:3)
每个版本的UserService都需要向后和转发兼容。这样客户端就可以与任何版本的服务进行通信,而不会崩溃。
当然,如何实现这一目标的细节取决于您的架构。
答案 1 :(得分:1)
为了向后兼容,请参阅Product Versioning Microservices,一般情况下Semantic Versioning会建议{...}}
从更广泛的意义上讲 - 主要版本应该有一个商定的逐步淘汰路线图,这个路线图会传达给API消费者(与SLA一起)。这就是跟踪谁使用您的API很重要的原因。