Spring Cloud技术栈简述
近年来,微服务架构正逐渐成为互联网业界的一种主流服务机制。早期的互联网应用大多是单体架构,随着业务的不断累加,代码量不断增大,逻辑混乱,扩展性也会随之降低,导致系统的复杂性持续升高,维护成本也会随之增加等痛点问题。那么,微服务概念的出现,就能够很好的降低甚至解决单体架构的痛点。微服务主要就是对系统应用进行有效的拆分,拆分后的应用仅需实现自己的业务逻辑,而无需考虑其他,拆分出来的应用各司其职,这样就是一个轻量级的应用,可以实现快捷开发和部署。Spring Cloud的应运而生,为微服务架构提供了一套生态较为完整的分布式系统解决方案。
Spring Cloud作为Spring家族的新成员,不仅继承了家族的优秀传统,身后有一大帮兄弟给它撑腰,这些兄弟也就组成了Spring Cloud微服务架构的生态链。换言之,Spring Cloud就是一系列框架的有序集合,充分利用Spring Boot的便利性,简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用Spring Boot的开发风格做到一键启动和部署。通过Spring Boot风格进行再封装屏蔽掉了复杂的配置和实现原理,最终提供给开发者一套简单易懂、易部署和易维护的分布式系统开发工具包。以下是Spring Cloud生态圈一众伙伴的简要介绍。
Spring Cloud Config:配置管理工具包,可以将配置放到远程服务器,集中化管理集群配置,目前支持本地存储、Git以及Subversion。
Spring Cloud Bus:事件、消息总线,用于在集群(例如,配置变化事件)中传播状态变化,官方集成了RabbitMQ,可与Spring Cloud Config联合实现热部署。
Spring Cloud Netflix:多种Netflix组件提供的开发工具包,其中包括Eureka、Hystrix、Zuul、Ribbon等。
Spring Cloud NetflixEureka:这是 Spring Cloud Netflix 微服务套件中的一部分,主要负责完成微服务架构中的服务治理功能,包括服务注册中心、服务注册与服务发现机制的实现,同时实现负载均衡和中间层服务器的故障转移。
Spring Cloud Netflix Hystrix:熔断器,容错管理工具,旨在通过熔断机制控制服务和第三方库的节点,从而对延迟和故障提供更强大的容错能力。
Spring Cloud Netflix Zuul:网关,提供动态路由、监控、弹性、安全等边缘服务的框架。Zuul 相当于是设备和 Netflix 流应用的 Web 网站后端所有请求的前门。
Spring Cloud Netflix Ribbon:提供客户端的负载均衡,有多种负载均衡策略可供选择,可配合服务发现和断路器使用。
Spring Cloud NetflixTurbine:聚合服务器发送事件流数据的一个工具,用来监控集群下hystrix的metrics情况。
Spring Cloud NetflixArchaius:配置管理API,包含一系列配置管理API,提供动态类型化属性、线程安全配置操作、轮询框架、回调机制等功能。
Spring CloudFeign:声明式、模板化的服务调用组件。
Spring Cloud Sleuth:日志收集工具包,封装了Dapper和log-based追踪以及Zipkin和HTrace操作,为SpringCloud应用实现了一种分布式追踪解决方案。
Spring Cloud Security:基于spring security的安全工具包,提供应用安全控制。
Spring Cloud Zookeeper:操作Zookeeper的工具包,用于使用zookeeper方式的服务发现和配置管理。
Spring Cloud Stream:数据流操作开发包,封装了与Redis,Rabbit、Kafka等发送接收消息。
Spring Cloud CLI:基于 Spring Boot CLI,可以命令行方式快速建立云组件。
Spring Cloud Task:提供计划任务管理、任务调度。
项目组小葵花Cloud课堂的一张简图奉上:
相关项目可参考网站:Spring Cloud中文网
Spring Cloud技术栈简述相关推荐
- 客快物流大数据项目(一百零八):Spring Cloud 技术栈
文章目录 Spring Cloud 技术栈 前言 一.微服务技术栈
- Spring Cloud技术栈还没有学完!Hystrix又双叒叕停止更新了!
作者:徐刘根 | 微信公众号 :Java后端技术(ID:JavaITWork) 今天无意间翻了一下Hystrix代码仓库,无意间看到最近的一条变更,竟然发现Hystrix也不再进行活跃的更新了,停止开 ...
- 基于CSE的微服务架构实践-Spring Cloud技术栈选型
[摘要] 本文介绍了CSE和Spring Cloud的关系,在技术选型上的差异.介绍了Spring Cloud用户使用Spring Cloud物理多租和进行CSE开发的两种策略. 当Spring Cl ...
- Spring cloud技术栈
1. springCloud SpringData 1.1 springData jpa & jdbc&mybatis 1.2 SpringData ES & Solr 1.3 ...
- Spring Cloud技术分析之Dubbo与Cloud的对比
现如今微服务架构十分流行,而采用微服务构建系统也会带来更清晰的业务划分和可扩展性.同时,支持微服务的技术栈也是多种多样的,本系列文章主要介绍这些技术中的翘楚--Spring Cloud.这是序篇,主要 ...
- Spring Security技术栈学习笔记(十三)Spring Social集成第三方登录验证开发流程介绍
开发第三方登录,我们必须首先要了解OAuth协议(本文所讲述的OAuth协议指的是OAuth2协议),本文首先简单介绍OAuth协议,然后基于Spring Social来阐述开发第三方登录需要做哪些准 ...
- 基于Spring Boot技术栈博客系统企业级前后端实战之课程导论(零)
零.说明(必读) 一.课程概述 1.1 名称 1.2 功能 1.3 技术点 1.4 目标 二.核心功能 2.1 用户管理 2.2 安全设置 2.3 博客管理 2.4 评论管理 2.5 点赞管理 2.6 ...
- Spring Security技术栈学习笔记(十四)使用Spring Social集成QQ登录验证方式
上一篇文章<Spring Security技术栈开发企业级认证与授权(十三)Spring Social集成第三方登录验证开发流程介绍>主要是介绍了OAuth2协议的基本内容以及Spring ...
- Spring Security技术栈学习笔记(八)Spring Security的基本运行原理与个性化登录实现
正如你可能知道的两个应用程序的两个主要区域是"认证"和"授权"(或者访问控制).这两个主要区域是Spring Security的两个目标."认证&qu ...
- 综合使用spring cloud技术实现微服务应用
cloud-config-server:配置服务器 cloud-eureka-server:eureka注册服务器 cloud-simple-service:一个使用mybatis的数据库应用,服务端 ...
最新文章
- ASP.NET MVC3细嚼慢咽---(2)模板页
- ImportError: DLL load failed: 找不到指定的模块
- androidEditTextinputType及android:imeOptions=”actionDone”(转)
- VS2010配置OpenCV
- SPDK,软件定义存储的催化剂
- python hacklib_【入门】angr:基于python的二进制分析框架
- BZOJ5289 洛谷4437:[HNOI/AHOI2018]排列——题解
- linux C 基于链表链的定时器
- linux 的常用命令---------第十一阶段(rpm、yum的仓库搭建)
- 致我唯一的kiyoumi
- java中int和Integer对比的一些坑
- 高等数学下——平面与直线
- 华为网络配置(路由配置)
- tplink错误代码51215_TPLINK路由器设置后访问受限
- js 利用window.getSelection() 实现简单的文字标注(鼠标选中文本,给其加下滑线、背景色)
- android 键盘挡住popupwindow,软键盘遮挡住popupWindow问题
- jQuery自定义插件
- WPF的TextBox抛出InvalidOperationException异常:Cannot close undo unit because no opened unit exists.
- 《新型智慧城市总体规划导则》发布
- 车载以太网 > 百兆100BaseT1转TX盒子拆解(包含3类产品)
热门文章
- 鸿蒙三千法则排名,三千法则名称大全_十大最强法则
- 解决systemback 无法生成超过4G的iso的问题
- php如何去除文件扩展名,php怎样去掉文件扩展名_后端开发
- 推荐一个不错的在线制图网站---ProcessOn
- python 金融知识图谱_从零搭建金融证券知识图谱-Part1
- 必备技能!聊聊二维码扫码登录的原理
- 服务器怎么格式化系统盘,如何格式化服务器
- 西北工业大学网络空间安全考研经验分享
- 鸿蒙中文翻译,华为鸿蒙出世,“鸿蒙”应该怎样翻译?这些古语才是中国人的浪漫!...
- HTTP 和 HTTPS 有什么区别?