Kubernetes 原生服务发现

Kubernetes 本身就能够进行(服务器端)服务发现(参见:kubernetes.io/docs/concepts/services-networking/service/#discovering-services)。使用原生 Kubernetes 服务发现可确保与 Istio (istio.io) 等附加工具的兼容性。Istio 是一种服务网格,能够进行负载均衡、熔断、故障转移等更多功能。

调用服务只需引用特定 Kubernetes 集群中可解析的名称。一个简单的实现可以使用 Spring RestTemplate,它引用完全限定域名 (FQDN),例如 {service-name}.{namespace}.svc.{cluster}.local:{service-port}

此外,您可以使用 Hystrix 进行

  • 通过使用 @EnableCircuitBreaker 注解 Spring Boot 应用程序类,在调用方实现熔断

  • 通过使用 @HystrixCommand(fallbackMethod= 注解相应方法来实现回退功能

© . This site is unofficial and not affiliated with VMware.