说到SpringCloud,离不了微服务。随着互联网的发展,网站应用的规模不断扩大。需求的激增,带来的是技术上的压力。系统架构也因此也不断的演进、升级、迭代。从单一应用,到垂直拆分,到分布式服务,到服务治理SOA,再到现在火热的微服务架构,这正是系统架构演变的历程。
一、SpringCloud是什么
微服务是一种架构方式,它的实现方式有很多,SpringCloud就是其中一种,也是现在最火的一种实现方式。它将现在非常流行的一些技术整合到一起,实现了诸如:配置管理,服务发现,智能路由,负载均衡,熔断器,控制总线,集群状态等等功能。其主要涉及的组件包括:注册中心Eureka、负载均衡Ribbon、熔断器Hystrix、服务调用Feign、服务网关Zuul。
Spring Cloud是一个基于Spring Boot实现的微服务架构开发工具,它为微服务架构中涉及的配置管理、服务治理、断路器、智能路由、微代理、控制总线、全局锁、决策竞选、分布式会话和集群状态管理等操作提供了一种简单的开发方式。
二、SpringCloud的特点
(1) 约定优于配置
(2)适用于各种环境
(3)隐藏了组件的复杂性,并提供声明式、无xml的配置方式
(4) 开箱即用,快速启动
(5)轻量级的组件。SpringCloud整合的组件大多比较轻量,例如Eureka、Zuul等等,都是各自领域轻量级的实现
(6)组件丰富,功能齐全。SpringCloud为微服务架构提供了非常完整的支持。例如,配置管理、服务发现、断路器、微服务网关等
(7)选型中立、丰富。例如,SpringCloud支持使用Eureka、Zookeeper或Consul实现服务发现
(8)灵活。SpringCloud的组成部分是解耦的,开发人员可按需灵活挑选技术选型
三、SpringCloud与五大组件的整合
SpringCloud与五大组件整合,如何使用,概览图如下:
详细请见博客
(1)注册中心Eureka
【SpringCloud】注册中心Eureka是什么呢,先从理论认识Eureka
【SpringCloud】一步一步进行搭建Eureka,实践中理解Eureka
(2)负载均衡Ribbon
【SpringCloud】负载均衡Ribbon是什么,又该怎么用呢?
(3)熔断器Hystrix
【SpringCloud】熔断器Hystix是什么,以及怎么使用呢
(4)服务调用Feign
【SpringCloud】服务调用Feign是什么呢,又该如何用呢?
(5)服务网关Zuul
【SpringCloud】服务网关Zuul有什么作用呢,以及该如何使用呢?
【SpringCloud】了解Zuul的过滤器,如何自定义一个过滤器
以上SpringCloud整合五大组件Eureka、Ribbon、Hystrix、Feign、Zuul的实践完整源代码下载链接:
https://download.csdn.net/download/cxh6863/12385185