springCloud

有疑问请咨询品儿:796513209

此文章适合初学者浅谈

一、什么是微服务

 微服务是一种架构方式。

简单的说微服务就是一个庞大的业务系统,按业务组成部分拆分成若干个子系统。每一个子系统都是一个独立的应用,拥有独立的数据库,甚至使用不同的编程语言,可以说是像java中的解耦思想,每一个子系统都可插拔 ,子系统的宕机不会影响其他系统正常工作。

  1. spring Cloud 为开发者提供了分布式系统(配置管理、服务发现、熔断、路由、微代理、控制总线、一次性token、分布式session、集群状态)

  2. SpringCloud利用SpringBoot的开发便利性,简化了分布式系统基础设施的开发。 

二、SpringCloud与SpringBoot之间的关系?

    SpringBoot专注于快速方便的开发单个个体微服务。

    SpringCloud是关注全局的微服务协调、整理、治理的框架,它将SpringBoot开发的单体整合并管理起来。

    SpringBoot可以离开SpringCloud独立使用开发项目,但是SpringCloud离不开SpringBoot,属于依赖关系。

三、微服务架构优缺点

优点:

1、通过分解巨大单体式应用为多个服务方法解决了复杂性问题,每个微服务相对较小

2、每个单体应用不局限于固定的技术栈,开发者可以自由选择开发技术,提供API服务。

3、每个微服务独立的开发,部署

4、单一职责功能,每个服务都很简单,只关注于一个业务功能

5、易于规模化开发,多个开发团队可以并行开发,每个团队负责一项服务

6、改善故障隔离。一个服务宕机不会影响其他的服务

缺点:

1、微服务应用是分布式系统,由此会带来固有的复杂性。

2、服务地址目录,服务健康度,部署困难,服务依赖问题,数据库分区问题。

四、系统演进

模式1

模式2

模式3

五、微服务的核心基础

网关 、服务发现注册、配置中心、链路追踪、负载均衡、熔断

1、网关:路由转发+过滤等

2、服务注册与发现:调用和被调用方信息维护

3、配置中心:管理配置、动态更新

4、链路追踪:分析调用链路耗时

5、负载均衡器:分发负载

6、保护自己和调用方

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
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、付费专栏及课程。

余额充值