微服务中的版本管理

version management in microservices

假设我的 微服务架构 中有一个 UserService 部署在云端。有一个 Service Discovery 用于将请求路由到不同的 UserService 主机。

如果我有两个不同版本的 UserService。比方说 user-service-1.0user-service-2.0 并且部分客户端仍应使用旧版本,那么如何管理它微服务架构。

UserService 的每个版本都需要向后向前 兼容。这样客户端就可以与任何版本的服务通信而不会崩溃。

当然,如何实现的细节取决于您的架构。

为了向后兼容,请参阅 , in general Semantic Versioning 许多人建议...

在更广泛的意义上 - 应该有一个商定的主要版本的逐步淘汰路线图,并传达给 API 消费者(连同 SLA)。这就是为什么跟踪谁使用您的 API 很重要。