微服务之服务注册与发现(基于kubernetes / SpringCloud)

  • 微服务

微服务是一种架构模式,一种分布式的架构风格。

顾名思义,micro service,将一个庞大的单体应用拆分成若干个“微小”的服务,服务间通过进程通讯完成原本在单体应用中的调用。

其中必要的六个基本技术为:

1、服务注册与发现;

2、进程间通信;

3、负载均衡;

4、分布式配置中心;

5、熔断器;

6、网关路由。

  • 基于k8s、springcloud的服务注册与发现对比

k8s并没有引入新的注册中心,使用的就是k8s的kube-dns。

k8s将Service的名称当做域名注册到kube-dns中,通过Service的名称就可以访问其提供的服务。

springCloud:

微服务之服务注册与发现(基于kubernetes / SpringCloud)_第1张图片

springCloud组件:

1. 服务注册中心Eureka:实现服务注册,服务发现,服务的路由分发基础能力。

2. 服务网关Zuul: 所有外部需要访问和请求的服务全部通过Zuul进行转发,类似API服务网关。

3. 断路器Hystrix:负责监控服务之间的调用情况,连续多次失败进行熔断保护。

4. 服务链监控Zipkin:实现服务日志监控和服务链监控。

k8s kube-dns

微服务之服务注册与发现(基于kubernetes / SpringCloud)_第2张图片

你可能感兴趣的:(Java)