SpringCloud

什么是微服务?
在这里插入图片描述
微服务的核心就是将传统的一站式应用,根据业务拆分成一个一个的服务,彻底解耦,每个微服务提供单个业务功能的服务;从技术角度看是小而独立的处理过程,类似进程,能自行单独启动或销毁,可拥有独立数据库。
缺点:开发人员要处理分布式系统的复杂性;服务增加,运维的压力增大;系统部署依赖,服务间通信成本;数据一致性;系统集成测试;性能监控
微服务技术栈
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
SpringCloud是什么?
springcloud=分布式微服务架构下的一站式解决方案,是各个微服务架构落地技术的集合体,俗称微服务全家桶。
官方说明
springcloud基于springboot提供了一套微服务解决方案,包括服务注册与发现,配置中心,全链路监控,服务网关,负载均衡,熔断器等组件,除了基于NetFlix的开源组件做高度抽象封装之外,还有一些选型中立的开源组件。

springcloud利用springboot的开发便利性简化了分布式系统基础设施的开发,springcloud为开发人员提供了快速构建分布式系统的一些工具,包括配置管理,服务发现,断路器,路由,微代理,事件总线,全局锁,决策竞选,分布式会话等,他们都能用springboot的开发风格做到一键启动和部署。

springboot没有重复制造轮子,它只是将目前各家公司开发的比较成熟、经得起实际考验的服务框架组合起来,通过springboot风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、易部署和维护的分布式系统开发工具包。
springboot和springcloud什么关系?
在这里插入图片描述
总结:springboot专注于快速,方便地开发单个微服务个体,springcloud专注全局的服务治理框架。
springcloud和dubbo对比:
在这里插入图片描述
在这里插入图片描述
Eureka(服务注册与发现):
在这里插入图片描述
在这里插入图片描述
Eureka和Dubbo架构对比:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
SpringCloud中可以使用eureka.server.enable-self-preservation=false禁用自我保护模式。

对于注册进eureka里的微服务,可以通过服务发现来获得该服务的信息。

Zookeeper和Eureka的对比:
在这里插入图片描述
Zookeeper保证CP,Eureka保证AP
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
Ribbon(负载均衡):
在这里插入图片描述
在这里插入图片描述
集中式LB:
在这里插入图片描述
进程内LB:将LB逻辑集成到消费方,消费方从服务注册中心获知哪些地址可用,然后自己再从这些地址中选择出一个合适的服务器。

Ribbon属于进程内LB,它是一个类库,集成于消费方进程,消费方通过它来得到服务提供方的地址。

Ribbon核心组件IRule:
在这里插入图片描述
Feign(负载均衡):
Feign是一个声明式的Web服务客户端,使得编写Web服务客户端变得非常容易,只需要创建 一个接口,然后再上面加上注解即可。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
Hystrix断路器:
在这里插入图片描述
服务熔断:
在这里插入图片描述
一般是由某个服务故障或者异常引起,类似保险丝,当某个异常条件被触发,直接熔断整个服务。
服务降级:
在这里插入图片描述
Hystrix Dashboard(服务监控):
在这里插入图片描述
Zuul网关:
在这里插入图片描述
Config(分布式配置中心):
在这里插入图片描述
SpringCloud Config为微服务架构中的微服务提供集中化的外部配置支持,配置服务器为各个不同微服务应用的所有环境提供了一个中心化的外部配置。
在这里插入图片描述
在这里插入图片描述
作用:
在这里插入图片描述

Spring Cloud是一个用于构建分布式系统的开发工具集合。它提供了一些常用的组件和框架,包括服务注册和发现、负载均衡、断路器、分布式配置等等。在使用Spring Cloud时,有一些常见的错误和注意事项需要注意。 首先,关于Spring Boot和Spring Cloud版本对应错误。在使用Spring Cloud时,需要确保Spring Boot和Spring Cloud的版本兼容。不同版本之间可能存在依赖冲突或不兼容的情况,因此需要根据官方文档或者相关文档来选择合适的版本。 另外,Spring Cloud Config是一个用于集中管理和动态获取配置的工具。它支持从Git、SVN或本地文件系统中获取配置文件,并提供了服务器和客户端支持。你可以通过官方使用说明文档了解更多关于Spring Cloud Config的详细信息。 此外,关于选择使用Nacos还是Eureka作为服务注册和发现组件的问题。Nacos是一个功能更强大的服务注册和发现组件,它整合了Spring Cloud Eureka、Spring Cloud Config和Spring Cloud Bus的功能。使用Nacos可以实现配置的中心动态刷新,而不需要为配置中心新增集群或使用消息队列。另一方面,Eureka是Spring Cloud原生全家桶的一部分,相对来说更加稳定一些。选择使用哪个组件需要根据具体的需求和项目特点来决定。 综上所述,Spring Cloud是一个用于构建分布式系统的开发工具集合,它提供了一些常用的组件和框架。在使用Spring Cloud时,需要注意Spring Boot和Spring Cloud版本的兼容性,并可以使用Spring Cloud Config来动态获取配置。同时,可以选择使用Nacos或Eureka作为服务注册和发现组件,具体选择需要根据项目需求来决定。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值