springcloud

SpringCloud

首先贴一本书:百度云 可通过此书学习。

1.微服务与springcloud

目前软件有三种架构类型:单体,分布式架构,SOA架构。

单体架构

单体:一个Web程序,包含了业务层,表现层,数据访问层,没有任何应用的拆分,开发完毕后成为一个超级大型的war项目。

优点:
易于开发:开发人员使用当前开发工具就可在段时间内开发应用。
易于测试:无需依赖其他接口,可以节约很多时间。
易于部署:只需将项目部署在本地环境即可 。

缺点:
灵活度不强:如果程序有任何的修改,修改的不只是一个点,而是自上而下的修改。测试时必须等到整个程序部署完之后,才能看得出效果,在开发过程可能需要等待其他开发人员完成后才可部署,降低了团队灵活性。
降低系统性能:原本可以直接访问,又增加了一层,即使只包含一个功能,也需要在各个层上写代码。
系统启动慢:一个进程包含了所有的业务逻辑,涉及过多,启动时间延长。
系统扩展性差:对程序进行操作时,牵一发而动全身。

分布式架构

简单来说,按照业务垂直切分,每个应用都是单体架构,通过API来进行相互调用。	

面向服务的SOA架构

面向服务的架构是一种软件体系结构,其应用程序的不通 组件通过网络上的通信协议向其他组件提供服务或消费服务,
所以也是一种分布式结构。简单来说,SOA是不同业务建立不同的服务,服务之间的数据交互粗粒度可以通过服务接口
分级,这样松散的耦合提高服务的可重用性,也让业务逻辑变得可组合,并且每个服务可以根据使用情况做出合理的分
布式布置,从而让服务变得规范,高性能,高可用。
SOA架构中有两个主要角色,服务提供者和服务消费者,阿里开源的dubbo就是SOA的典型实现。

优点:
把模块拆分,使用接口通信,降低模块之间的耦合度,把项目拆分成若干个子项目,不同团队负责不同的子项目。
增加功能时只需要增加一个子项目,调用其他系统的接口即可,灵活的使用分布式架构。

缺点:
系统之间的交互需要使用远程通信,接口开发增加工作量。

微服务架构

微服务架构在某种成都下算是SOA架构的更进一步,微服务架构算是一种架构风格,对一个大型复杂的业务系统,
它的业务功能可以拆分为多个相互独立的微服务,各个微服务之间是松耦合的,通过各种远程协议进行同步,各
均可以被独立部署,扩/缩容,升/降级。

对比:
在这里插入图片描述
在这里插入图片描述

Springcloud就是一个微服务架构的一种解决方案。
Springcloud也是一个中间件。它目前由Spring官方开发维护,基于Spring boot开发,提供一套完整的微服务解决方案。包括服务注册与发现、配置中心、全链路监控、API网关、熔断器等选型中立的开源组件,可以随需扩展和替换组装。

如果所示:
在这里插入图片描述
当然我们也有基于dubbo的解决方案。即,2012年,阿里巴巴在GitHub上开源了基于Java分布式服务治理框架Dubbo,但是Dubbo未来的定义并不是要成为一个微服务的全面解决方案,而是专注于RPC领域,成为微服务生态体系中的一个重要组件。致郁微服务化衍生出的服务治理需求,Dubbo正则积极匹配开源解决方案,并且已经启动的开源项目予以支持,比如最近宣布的开源的Nacos。Nacos的定义是一个更易于帮助构建云原生应用的动态服务发现、配置和服务管理凭条。因此基于Dubbo的解决方案是:Dubbo+Nacos+其他。

我们所用到的Spring Cloud版本通常是F版本,它的版本以伦敦地铁站来命名。如果问你Spring Boot 和 Spring Cloud 有什么关系?其实没什么关系,但是Spring Cloud 基于Spring Boot

再次强调一遍:Springcloud就是一个微服务架构的一种解决方案。
它提供了一系列的组件:

在这里插入图片描述
这是对于一个Spirng Cloud基本介绍,实例以及更深入了解请看开头的书。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值