Spring Cloud之基础概念篇

Spring Cloud 是什么

[百度百科]Spring Cloud是一系列框架的有序集合。它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用 Spring Boot的开发风格做到一键启动和部署。Spring Cloud并没有重复制造轮子,它只是将目前各家公司开发的比较成熟、经得起实际考验的服务框架组合起来,通过Spring Boot风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、易部署和易维护的分布式系统开发工具包。

     Spring Cloud是一系列框架的有序集合(Spring Cloud是一个规范)。开发服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等。利用Spring Boot的开发便利性简化了微服务架构的开发(自动装配)

这里,我们需要注意,Spring Cloud其实是一套规范,是一套用于构建微服务架构的规范,而不是一个可以拿来即用的框架(所谓规范就是应该有哪些功能组件,然后组件之间怎么配合,共同完成什么事情)。在这个规范之下第三方的Netflix公司开发了一些组件、Spring官方开发了一些框架/组件,包括第三方的阿里巴巴开发了一套框架/组件集合Spring Cloud Alibaba,这些才是Spring Cloud规范的实现。

Netflix搞了一套 ,简称SCN

Spring Cloud 吸收了Netflix公司的产品基础之上自己也搞了几个组件阿里巴巴在之前的基础上搞出了一堆微服务组件,Spring Cloud Alibaba(SCA)

Spring Cloud 解决什么问题

Spring Cloud 规范及实现意图要解决的问题其实就是微服务架构实施过程中存在的一些问题,比如微服务架构中的服务注册发现问题、网络问题(比如熔断场景)、统一认证安全授权问题、负载均衡问题、链路追踪等问题。

Distributed/versioned configuration (分布式/版本化配置)

Service registration and discovery (服务注册和发现)

Routing (智能路由)

Service-to-service calls (服务调用)

Load balancing (负载均衡)

Circuit Breakers (熔断器)

Global locks (全局锁)

Leadership election and cluster state ( 选举与集群状态管理)

Distributed messaging (分布式消息传递平台)

 Spring Cloud 架构

如前所述,Spring Cloud是一个微服务相关规范,这个规范意图为搭建微服务架构提供一站式服务,采用组件(框架)化机制定义一系列组件,各类组件针对性的处理微服务中的特定问题,这些组件共同来构成Spring Cloud微服务技术栈。

SpringCloud主要核心组件如下:

 

SpringCloud Netflix(一代)

SpringCloud

官方

SpringCloud 

Zookeeper

SpringCloud

Consul

SpringCloud

Kubernetes

SpringCloud

Alibaba(二代)

分布式配置

Archaius

SpringCloud

Config

Zookeeper

Consul

ConfigMap

Nacos

服务注册/发现

Eureka

 

--------

Zookeeper

Consul

Api Server

Nacos

服务熔断

Hystris

--------

--------

--------

--------

Sentinel

服务调用

Feign

OpenFeign

ResTemplate

 

--------

 

--------

 

--------

 

Dubbo RPC

服务路由(网关)

 

Zull

SpringCloud

GetWay

 

--------

 

--------

 

--------

 

Dubbo PROXY

分布式消息

 

--------

SCS RabbitMQ

 

--------

 

--------

 

--------

SCS RabbitMQ

负载均衡

Ribbon

--------

--------

--------

--------

Dubbo LB

分布式事务

 

--------

 

--------

 

--------

 

--------

 

--------

 

Seata

 

注: Spring Cloud 生态圈中的组件,按照发展可以分为第一代 Spring Cloud组件和第二代 SpringCloud组件。 一代现在还有企业再用,将来二代必然会是大趋势。

本篇是基础概念,接下来会出Springboot,SpringCloud系列文章

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值