1.前言

2020-02-15  本文已影响0人  阿宝_5b5e

作者自前年入职某国企,接触到Spring Cloud微服务架构,踏上了Spring Cloud的踩坑之路。

一、Spring Cloud的概念

Spring Cloud是基于Spring Boot封装出来的专门为微服务实现提供的一套解决方案,其包括服务注册、配置中心、服务网关、全链路监控,消息总线、负载均衡、熔断器等组件。

Spring Cloud利用了SpringBoot的开发便利性(特别是注解以及yml配置文件)巧妙的简化了分布式系统基础设施的开发,Spring Cloud为开发人员提供了快速构建分布式系统的一些工具,包括配置管理、服务发现、断路器、地址路由、微代理、事件总线、全局锁、决策竞选、分布式 会话等。

二、Spring Cloud的特性

1.分布式/版本化配置(天然具备分布式部署能力)

2.服务注册和发现(也可采取第三方组件如nacos作为服务注册和配置中心)

3.统一路由

4.服务之间通过暴露接口实现调用

5.负载均衡

6.断路器(防止因为单个服务问题导致整个服务瘫痪)

三、Spring Cloud的特点

1.约定优于配置

2.开箱即用、快速启动

3.组件支持丰富,功能齐全

4.适用于各种环境

四、Spring Cloud的核心组件

1.服务注册发现(Netflix Eureka)

2.配置中心(Spring Cloud Config)

3.负载均衡(Netflix Ribbon)

4.断路器(Netflix Hystrix)

5.网关路由(Netflix Zuul)

五、Spring Cloud的包组成

1.Spring Cloud Netflix:是对Netflix开发的一套分布式服务框架的封装,包括服务的发现和注册、负载均衡、断路器、Rest客户端,请求路由等

2.Spring Cloud Config:将配置信息中央化保存,配置Spring Cloud Bus或者github可以实现动态修改配置文件

3.Spring Cloud Bus:分布式消息队列,是对kafka,MQ的封装

4.Spring Cloud Security:对Spring Cloud Security的封装,并能配合Netflix使用

5.Spring Cloud Zookeeper : 对Zookeeper的封装,使之能配置其他Spring Cloud的子项目使用

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

六、Spring Cloud的优势

1.Spring Cloud来源于Spring,质量,稳定性,持续性都可以得到保证

2.Spring Cloud天然支持Spring Boot,更加便于业务落地

3.Spring Cloud开源,社区活跃度非常高

4.Spring Cloud是Java领域最适合做微服务的框架

5.相比于其他框架,Spring Cloud对微服务周边环境的支持力度最大

6.对于中小企业来讲,使用门槛较低

7.Spring Cloud是微服务架构的最佳落地方案

七、Spring Cloud的推荐开发工具

IntelliJ IDEA - JAVA开发神器,别问,赶紧使用它吧

八、小结

本文主要对Spring Cloud进行整体的介绍,接下来作者会利用闲暇时间对Spring Cloud 2.2.4开发参考指南(Spring Boot Reference Documentation)进行学习整理,以便对Spring Cloud有更深入的理解。

上一篇下一篇

猜你喜欢

热点阅读