微服务系统架构

微服务系统架构

1. 微服务

      微服务是一种架构风格,一个大型复杂的软件应用由一个或多个微服务组成。每个微服务仅关注与完成一件任务,且可以被独立部署。

     微服务的特点:

           ① 语言无关性;

           ② 独立进程通信;

           ③ 高度解耦;

           ④ 弹性伸缩,易扩展; 

2. 微服务架构图


微服务系统架构
  

3. 微服务组件

组件①:

服务注册与发现,consul&eureka

1)服务注册与发现;

2)健康检查;

3)分布式配置,key/value存储;

4)分布式一致性协议实现;

5)多数据中心支持;

组件②:

服务容错,hystrix

1)熔断模式;

2)隔离模式;

3)回退;

4)限流;

组件③:

动态路由和过滤,zuul

1)动态路由;

2)监控;

3)回退;

4)安全;

组件④:

调用链追踪,twitter zipkin

1)收集服务监控数据,并提供查询接口;

组件⑤:

客户端负载均衡,Ribbon

1)连接超时;

2)连接重试;

3)提供简单轮询、随机连接等规则去连接机器;

4)自定义负载均衡算法; 

组件⑥:

客户端负载均衡,Feign

1)声明式的web service客户端;

2)整合了Ribbon和Eureka提供负载均衡功能;

相关推荐