springCloud-Alibaba微服务是一系列组件的组合,最终实现分布式、集群部署、动态配置、高可用、高并发、高可用等全面优化的一套微服务。涉及的主要组件包括:

keepalived:防止单点故障;

lvs:转发请求;

nginx:负载均衡;

gateway+JWT:路由网关、统一授权认证;

sentinel:熔断器;

sentinel控制台:web可视化系统;

ribbon:请求负载均衡;

nacos:注册配置中心,包括nacos-discovery(注册服务)、nacos-config(配置服务);

feign:简化http请求;

mq:消息队列;

nacos-address:nacos地址服务器;

actuator:应用监控;

admin:web可视化actuator系统;

sleuth:微服务跟踪工具;

zipkin:web可视化sleuth调用链系统;

beats:ELK生态集群中读取数据的工具;

logstash:ELK生态集群中抽取和处理数据的工具;

elasticsearch:ELK生态集群中存储数据;

kibana:ELK生态集群中查询和分析数据的web系统;

elasticsearch-head:一种查看和操作elasticsearch数据的web工具;

通过以上各种组件的配置使用,可以在微服务集群部署完成以后,可以让后台管理员,通过6个web系统+1个url接口来动态的管理和查看集群中的各种信息,详细介绍如下:

nacoss-address:通过url接口,可以让后台管理员动态的管理nacos中的nacos-config集群节点,可以增加、删除集群节点,而不用修改微服务中的nacos-config的配置信息。但是微服务中配置的nacos-discovery、sentinel等信息,需要在nacos控制台中的配置文件中进行修改。

nacos:通过web可视化系统,可以让后台管理员动态的配置各个微服务的配置文件,并且实现自动生效的效果。

sentinel控制台:通过web可视化系统,可以后台让管理员查看每个微服务对应的请求信息,以及配置各个接口数据规则,限制访问流量等配置信息,并且实现自动实时生效的效果。

zipkin:通过web可视化系统,可以让后台管理员查看每个微服务的请求调用的响应时间,请求调用的依赖关系等,可以及时的分析和定位问题。

admin:通过web可视化系统,可以让后台管理员查看每个微服务的健康信息,各个微服务应用的各种信息,让管理员方便全面的了解各部署应用实例。

kibana:通过web可视化系统,可以让后台管理员方便的查看各个部署实例的日志信息,并可以让后台管理员分析日志数据。

elasticsearch-head:通过web可视化系统,可以让后台管理员方便的对elasticsearch中的数据进行查询和操作。

具体的整个springCloud-Alibaba微服务架构图如下所示:

阿里 nacos 微服务架构图设计理念 阿里内部微服务框架_alibaba微服务