SpringCloud概述及与SpringBoot的关系

简介: SpringCloud概述及与SpringBoot的关系

一、微服务概述

单体架构:将服务的所有功能集中在一个项目中开发,打成一个包部署


优点:架构简单、部署成本低

缺点:耦合度高


适合小型项目,例如:学生管理系统

1b31536997b9435c8f262ae4bf6cf4b7.png

分布式架构:根据业务功能对系统进行拆分,每个业务模块作为独立项目开发,称为一个服务


优点:降低服务耦合、有利于服务升级拓展

缺点:架构复杂、难度大


适合大型互联网项目,例如京东、淘宝

822fa0e2d1864853a0db9cad465c8a9f.png

微服务是一种经过良好架构设计的分布式架构方案,微服务架构的特征:


单一职责:微服务拆分粒度更小,每一个服务都对唯一的业务能力,做到单一职责,避免重复业务开发

面向服务:微服务对外暴露业务接口

自治:团队独立、技术独立、数据独立、部署独立

隔离性强:服务调用做好隔离、容错、降级,避免出现级联问题


优缺点:

优点:拆分粒度更小、服务更独立、耦合度更低

缺点:架构非常复杂、运维、监控、部署难度提高

ff98880f21ba4439b8e4d85bffe545f2.png

二、SpringCloud概述

① SpringCloud基于SpringBoot提供了一套微服务解决方案,包括服务注册与发现、配置中心、全链路监控、服务网关、负载均衡、熔断器等组件,除了基于NetFilx的开源组件做高度抽象封装之外,还有一些选型中立的开源组件。

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

③ SpringBoot并没有重复造轮子,它只是将目前各家公司开发的比较成熟,经得起实际考研的服务框架组合起来,通过SpringBoot风格进行再封装,屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂,易部署和易维护的分布式系统开发工具包

④ SpringCloud是分布式微服务架构下的一站式解决方案,是各个微服务架构落地技术的集合体,俗称微服务全家桶。

三、SpringCloud和SpringBoot关系

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


SpringCloud是关注全局的微服务协调整理治理框架,它将SpringBoot开发的一个个单体微服务整合并管理起来,为各个微服务之间提供:配置管理、服务发现、断路器、路由、微代理、事件总线、全局锁,决策竞选、分布式会话等等集成服务


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


SpringBoot专注于快速、方便的开发单个个体微服务,SpringCloud关注全局的服务治理框架

目录
相关文章
|
1月前
|
负载均衡 Java 开发者
深入探索Spring Cloud与Spring Boot:构建微服务架构的实践经验
深入探索Spring Cloud与Spring Boot:构建微服务架构的实践经验
128 5
|
2月前
|
SpringCloudAlibaba Java Nacos
SpringCloud概述
SpringCloud概述
46 1
SpringCloud概述
|
4月前
|
设计模式 Java 关系型数据库
【Java笔记+踩坑汇总】Java基础+JavaWeb+SSM+SpringBoot+SpringCloud+瑞吉外卖/谷粒商城/学成在线+设计模式+面试题汇总+性能调优/架构设计+源码解析
本文是“Java学习路线”专栏的导航文章,目标是为Java初学者和初中高级工程师提供一套完整的Java学习路线。
504 37
|
3月前
|
负载均衡 网络协议 Java
浅谈Springboot与Springcloud的区别
浅谈Springboot与Springcloud的区别
61 1
|
5月前
|
Java 微服务 Spring
SpringBoot+Vue+Spring Cloud Alibaba 实现大型电商系统【分布式微服务实现】
文章介绍了如何利用Spring Cloud Alibaba快速构建大型电商系统的分布式微服务,包括服务限流降级等主要功能的实现,并通过注解和配置简化了Spring Cloud应用的接入和搭建过程。
SpringBoot+Vue+Spring Cloud Alibaba 实现大型电商系统【分布式微服务实现】
|
5月前
|
Java
SpringBoot和SpringCloud对应版本
SpringBoot和SpringCloud对应版本
94 0
|
6月前
|
Java API 开发工具
Spring Boot与Spring Cloud Config的集成
Spring Boot与Spring Cloud Config的集成
|
6月前
|
监控 NoSQL Java
通用快照方案问题之Martin Flower提出的微服务之间的通信如何解决
通用快照方案问题之Martin Flower提出的微服务之间的通信如何解决
46 0
|
3月前
|
JavaScript 安全 Java
如何使用 Spring Boot 和 Ant Design Pro Vue 实现动态路由和菜单功能,快速搭建前后端分离的应用框架
本文介绍了如何使用 Spring Boot 和 Ant Design Pro Vue 实现动态路由和菜单功能,快速搭建前后端分离的应用框架。首先,确保开发环境已安装必要的工具,然后创建并配置 Spring Boot 项目,包括添加依赖和配置 Spring Security。接着,创建后端 API 和前端项目,配置动态路由和菜单。最后,运行项目并分享实践心得,包括版本兼容性、安全性、性能调优等方面。
199 1
|
2月前
|
JavaScript 安全 Java
如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个具有动态路由和菜单功能的前后端分离应用。
本文介绍了如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个具有动态路由和菜单功能的前后端分离应用。首先,创建并配置 Spring Boot 项目,实现后端 API;然后,使用 Ant Design Pro Vue 创建前端项目,配置动态路由和菜单。通过具体案例,展示了如何快速搭建高效、易维护的项目框架。
131 62