Java SpringBoot SpringCloud

基础介绍

Spring Cloud 是一系列框架的有序集合,Spring Cloud 利用 Spring Boot的开发便利性简化了分布式系统的开发,比如服务发现、服务网关、服务路由、链路追踪等。

Spring Cloud 准确的说,它不是一个框架,是一套完整的基于 Spring Boot 框架的微服务解决方案。

Spring Cloud 并不重复造轮子,而是将市面上开发得比较好的模块集成进去,进行封装,从而减少了各模块的开发成本。


Spring Cloud 微服务开发都是基于Spring Boot的。Spring boot开发单个微服务,Cloud专注于各个微服务之间的治理。

Spring Cloud 采用基于HTTP的REST方式通信。


常用组件

Spring Cloud 是由一系列框架组成的微服务解决方案,框架众多复杂,此处只是简单描述。


Spring Cloud Netfix Eureka

Spring Cloud Netflix 微服务套件中的一部分,它基于Netflix Eureka 做了二次封装,主要负责完成微服务架构中的服务治理功能。

Spring Cloud Netfix Ribbon

基于客户端的负载均衡组件。

Spring Cloud Netflix Hystrix

容错框架,能够防止服务的雪崩效应。

Spring Cloud Netfix Zuul

Zuul是在云平台上提供动态路由,监控,弹性,安全等边缘服务的框架。

Spring Cloud Config

将配置信息中央化保存, 配置Spring Cloud Bus可以实现动态修改配置文件。

Spring Cloud Bus

消息代理的集群消息总线。分布式消息队列,是对Kafka, MQ的封装。

Spring Cloud Gateway

为微服务架构提供一种简单有效的、统一的 API 路由管理方式。其目标是替代 Netflix Zuul。

Spring Cloud OpenFeign

服务远程调用客户端工具,使用注解简化 HTTP 接口的调用。

Spring Cloud Steam

构建消息驱动的微服务应用程序的框架。

Spring Cloud Sleuth

日志收集工具包,封装了Dapper和log-based追踪以及Zipkin和HTrace操作,为SpringCloud应用实现了一种分布式追踪解决方案。

Spring Cloud Task

主要解决短命微服务的任务管理,任务调度的工作。

Spring Cloud Zookeeper

对Zookeeper的封装,使之能配置其它Spring Cloud的子项目使用。

Spring Cloud Security

对Spring Security的封装,并能配合Netflix使用。

Spring Cloud Consul

封装了Consul操作,Consul是一个服务发现与配置工具,与Docker容器可以无缝集成。

Consul由HashiCorp公司用Go语言开发。

Spring Cloud data flow

是基于原生云对 spring XD的重新设计,该项目目标是简化大数据应用的开发。Spring XD 的流处理和批处理模块的重构分别是基于 Spring Boot的stream 和 task/batch 的微服务程序。这些程序现在都是自动部署单元而且他们原生的支持像 Cloud Foundry、Apache YARN、Apache Mesos和Kubernetes 等现代运行环境。

Spring Cloud Connectors

Spring Cloud Connectors简化了连接到服务的过程和从云平台获取操作的过程,有很强的扩展性,可以利用Spring Cloud Connectors来构建云平台。

Spring Cloud CLI

可以让以命令行方式快速建立云组件。


Springcloud和Dubbo的对比

功能

Dubbo

Spring Cloud

注册中心

Zookeeper

Spring Cloud Netfix Eureka

服务调用方式

RPC

REST API

网关

Spring Cloud Gateway

(Spring Cloud Netfix Zuul)

断路由

集群容错

Spring Cloud Netfix Hystrix

分布式配置

Spring Cloud Config

服务跟踪

无,monitor

Spring Cloud Sleuth

消息总线

Spring Cloud Bus

数据流

Spring Cloud Stream

批量任务

Spring Cloud Task




转载请指明出处!http://www.miselehe.com/article/view/116