我们面临的问题是我们需要做诸如动态路由和金丝雀发布之类的事情。因此,例如,我们部署微服务microservice-1
。然后,当有人完成一项大功能时,我们希望将其部署为微服务microservice-1.1
。
问题
是否可以使用信息(例如,来自标头的信息)动态重新路由请求,并路由到微服务版本microservice-1.1
而不是 on microservice-1
?
例如,有人需要此功能,他将修改/添加特定的 Header 并且对于所有请求,他将使用 new microservice-1.1
。如果缺少该标头,则应使用当前的 microservice-1 版本。
对于服务发现,我使用的是 Eureka。现在我正在研究linkerd,但不支持 Eureka,我现在正在研究它。当然,如果可以使用 Zuul 做到这一点,那就太好了。请告知在哪里看。