0
當我想部署同一個微服務的多個版本時,我是否應該爲每個服務提供不同的端點。例如,如果我暴露CustomerService,我應該公開http://host:port/v1/CustomerService,http://host:port/v2/CustomerService等?或者是否有辦法在雲代工廠中基於消費者公開單個端點和路由?Cloud Foundry - 多個服務版本
當我想部署同一個微服務的多個版本時,我是否應該爲每個服務提供不同的端點。例如,如果我暴露CustomerService,我應該公開http://host:port/v1/CustomerService,http://host:port/v2/CustomerService等?或者是否有辦法在雲代工廠中基於消費者公開單個端點和路由?Cloud Foundry - 多個服務版本
您可以將create和map路線包含路徑的一部分,例如, v2
。例如,您可能有兩個應用程序,MyService
和MyServiceV2
,那麼你可以做:
cf create-route SPACE_NAME SOME_APP_DOMAIN --hostname myservice
cf create-route SPACE_NAME SOME_APP_DOMAIN --hostname myservice --path v2
cf map-route MyService SOME_APP_DOMAIN --hostname myservice
cf map-route MyServiceV2 SOME_APP_DOMAIN --hostname myservice --path v2
然後,該微服務的任何客戶端可以談論的東西像myservice.SOME_APP_DOMAIN/some-resource
或myservice.SOME_APP_DOMAIN/v2/some-resource
,這取決於是否這些老客戶交談,舊服務或最新客戶與新客戶交談。
維護每個版本的單個jar和適配器是否是一種慣例? –