没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
试读
12页
Spring Cloud是基于Spring Boot提供的一套微服务解决方案,包括服务注册与发现、配置中心、全链路监控、服务网关、负载均衡、熔断器等功能。它利用Spring Boot的开发便利性,简化了分布式系统基础设施的开发,为开发人员提供了一些快速构建分布式系统的工具,如配置管理、服务发现、断路器、路由、微代理、事件总线、全局锁、决策竞选、分布式会话等。 整体架构上,Spring Cloud各个子项目都有自己的定位和设计理念。其中,服务注册与发现组件包括Eureka、Zookeeper、Consul和Nacos等;配置中心提供了配置集中管理,动态刷新配置的功能,配置通过Git或者其他方式来存储;安全控制组件基于OAuth2.0开放网络的安全标准,提供了单点登录、资源授权和令牌管理等功能;链路追踪组件包括Spring Cloud Sleuth和Zipkin,用于收集调用链路上的数据。 Spring Cloud还提供了一系列的子项目和工具,如Spring Cloud Bus(事件/消息总线)、Spring Cloud Security(基于springsecurity的安全工具包)
资源推荐
资源详情
资源评论
1. 什么是微服务架构
微服务架构就是将单体的应用程序分成多个应用程序,这多个应用程序就成为微服务,每个微服务运行在自
己的进程中,并使用轻量级的机制通信。这些服务围绕业务能力来划分,并通过自动化部署机制来独立部
署。这些服务可以使用不同的编程语言,不同数据库,以保证最低限度的集中式管理。
2. 为什么需要学习SpringCloud
首先springcloud基于spingboot的优雅简洁,可还记得我们被无数xml支配的恐惧?可还记得
springmvc,mybatis错综复杂的配置,有了spingboot,这些东西都不需要了,spingboot好处不再赘
诉,springcloud就基于SpringBoot把市场上优秀的服务框架组合起来,通过SpringBoot风格进行再封
装屏蔽掉了复杂的配置和实现原理。
什么叫做开箱即用?即使是当年的黄金搭档dubbo+zookeeper下载配置起来也是颇费心神的!而
springcloud完成这些只需要一个jar的依赖就可以了!
springcloud大多数子模块都是直击痛点,像zuul解决的跨域,fegin解决的负载均衡,hystrix的熔断机
制等等
3. SpringCloud是什么
SpringCloud是一系列框架的有序集合。它利用SpringBoot的开发便利性巧妙地简化了分布式系统基础设施
的开发,如服务发现注册、配置中心、智能路由、消息总线、负载均衡、断路器、数据监控等,都可以用
SpringBoot的开发风格做到一键启动和部署。
SpringCloud并没有重复制造轮子,它只是将各家公司开发的比较成熟、经得起实际考验的服务框架组合起
来,通过SpringBoot风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、
易部署和易维护的分布式系统开发工具包。
4. SpringCloud的优缺点
优点:
1.耦合度比较低。不会影响其他模块的开发。
2.减轻团队的成本,可以并行开发,不用关注其他人怎么开发,先关注自己的开发。
3.配置比较简单,基本用注解就能实现,不用使用过多的配置文件。
4.微服务跨平台的,可以用任何一种语言开发。
5.每个微服务可以有自己的独立的数据库也有用公共的数据库。
6.直接写后端的代码,不用关注前端怎么开发,直接写自己的后端代码即可,然后暴露接口,通过组件进
行服务通信。
缺点:
1.部署比较麻烦,给运维工程师带来一定的麻烦。
Spring Cloud Version SpringBoot Version
Hoxton 2.2.x
Greenwich 2.1.x
Finchley 2.0.x
Edgware 1.5.x
Dalston 1.5.x
2.针对数据的管理比麻烦,因为微服务可以每个微服务使用一个数据库。
3.系统集成测试比较麻烦
4.性能的监控比较麻烦。
总的来说优点大过于缺点,目前看来SpringCloud是一套非常完善的分布式框架,目前很多企业开始用微服
务、SpringCloud的优势是显而易见的。因此对于想研究微服务架构的同学来说,学习SpringCloud是一个不
错的选择。
5. SpringBoot和SpringCloud的区别?
SpringBoot专注于快速方便的开发单个个体微服务。
SpringCloud是关注全局的微服务协调整理治理框架,它将SpringBoot开发的一个个单体微服务整合并
管理起来。
为各个微服务之间提供,配置管理、服务发现、断路器、路由、微代理、事件总线、全局锁、决策竞
选、分布式会话等等集成服务。
SpringBoot可以离开SpringCloud独立使用开发项目,但是SpringCloud离不开SpringBoot,属
于依赖的关系。
SpringBoot专注于快速、方便的开发单个微服务个体,SpringCloud关注全局的服务治理框架。
6. SpringCloud和SpringBoot版本对应关系
7. SpringCloud由什么组成
这就有很多了,我讲几个开发中最重要的
SpringCloudEureka:服务注册与发现
SpringCloudZuul:服务网关
SpringCloudRibbon:客户端负载均衡
SpringCloudFeign:声明性的Web服务客户端
SpringCloudHystrix:断路器
SpringCloudConfig:分布式统一配置管理
8. 使用SpringBoot开发分布式微服务时,我们
面临什么问题
(1)与分布式系统相关的复杂性-这种开销包括网络问题,延迟开销,带宽问题,安全问题。
(2)服务发现-服务发现工具管理群集中的流程和服务如何查找和互相交谈。它涉及一个服务目录,在该目
录中注册服务,然后能够查找并连接到该目录中的服务。
(3)冗余-分布式系统中的冗余问题。
(4)负载平衡--负载平衡改善跨多个计算资源的工作负荷,诸如计算机,计算机集群,网络链路,中央处理
单元,或磁盘驱动器的分布。
(5)性能-问题由于各种运营开销导致的性能问题。
9. SpringCloud和dubbo区别?
(1)服务调用方式:dubbo是RPCspringcloudRestApi
(2)注册中心:dubbo是zookeeperspringcloud是eureka,也可以是zookeeper
(3)服务网关,dubbo本身没有实现,只能通过其他第三方技术整合,springcloud有Zuul路由网关,作为
路由服务器,进行消费者的请求分发,springcloud支持断路器,与git完美集成配置文件支持版本控制,事物
总线实现配置文件的更新与服务自动装配等等一系列的微服务架构要素。
10. 服务注册和发现是什么意思?SpringCloud
如何实现?
当我们开始一个项目时,我们通常在属性文件中进行所有的配置。随着越来越多的服务开发和部署,添加和
修改这些属性变得更加复杂。有些服务可能会下降,而某些位置可能会发生变化。手动更改属性可能会产生
问题。Eureka服务注册和发现可以在这种情况下提供帮助。由于所有服务都在Eureka服务器上注册并通过调
用Eureka服务器完成查找,因此无需处理服务地点的任何更改和处理。
11. 什么是Eureka
Eureka作为SpringCloud的服务注册功能服务器,他是服务注册中心,系统中的其他服务使用Eureka的客户
端将其连接到EurekaService中,并且保持心跳,这样工作人员可以通过EurekaService来监控各个微服务是
否运行正常。
剩余11页未读,继续阅读
资源评论
孤蓬&听雨
- 粉丝: 6868
- 资源: 301
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功