首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
SAAS
ToB门户
了解全球最新的ToB事件
论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
微博
Follow
记录
Doing
博客
Blog
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
排行榜
Ranklist
相册
Album
应用中心
qidao123.com ToB IT社区-企服评测·应用市场
»
论坛
›
软件与程序人生
›
云原生
›
SpringCloud之详解架构的演变历程
返回列表
发新帖
SpringCloud之详解架构的演变历程
[复制链接]
发表于 2025-5-7 06:34:54
|
显示全部楼层
|
阅读模式
众所周知Spring Cloud指的是为服务架构,那么他是怎么演变过来的呢,有兴趣的小伙伴可以详细看看哦~
1.单体应用架构
单体架构
就是将所有的应用、
数据库
、文件都部署在一台呆板上,俗称All-In-One。简朴来讲实在就是我们熟知的SSH 架构或SSM架构,把所有的业务模块都放在一个应用中开发,这里面又衍生出三层架构,即表现层、业务逻辑层和
数据库
访问层,虽然在软件筹划中划分了经典的三层模子,但是对业务场景没有划分,一个典范的单体应用就 是将所有的业务场景的表现层、业务逻辑层和数据访问层放在一个工程项目中,最终颠末编译、打包,部署在一台
服务器
上。单体架构图如下:
长处
部署简朴
由于是完整的布局体,可以直接部署在一个
服务器
上即可。
技能单一
项目不需要复杂的技能栈,往往一套熟悉的技能栈就可以完成开发,架构图简朴易懂。
用人本钱低
单个程序员可以完成业务接口到
数据库
的整个流程。
缺点
体系启动慢
一个进程包罗了所有的业务逻辑,涉及到的启动模块过多,导致体系的启动、重启时间周期过长。
体系错误隔离性差、模块之间耦合性高
任何一个模块的错误均可能造成整个体系的宕机。
不
安全
用户可以直接访问到
服务器
扩展性差
无法针对某一模块举行扩展和优化,前台页面模块承载压力过大,无法对前台页面模块举行单独扩展
问题
:
当用户访问量过大时,服务器遭受压力是有限制的,只管可以增加服务器的设置,那也是有天花板的
2.垂直应用布局
随着公司业务的不断发展,由于单台服务器
性能
有限,我们无法对单个模块举行扩展,那么需要将各个模块举行拆分,
分为治之,
如下图:将模块拆分成多个服务。
长处:
扩展性变强
体系拆分之后,可以对某个模块举行扩展和优化,
模块之间耦合性低落
某一个模块的错误不会太过于直接影响其它模块
缺点:
调用问题
体系之间无法直接相互调用
冗余性
随着项目
功能
的美满,
代码
会有部门重复
问题:
各个体系之间相互会需要大量的冗余
代码
,怎样能把各个模块都需要的公共模块提取出来?
3.分布式布局
把各个模块都需要的公共模块提取出来,比如基本信息、销售管理、采购管理都需要用户服务,商品服务,订单服务。
长处:
复用性
抽取公共
代码
模块为服务层,加强代码复用性
缺点:
复杂性
各个模块之间调用关系复杂,手动维护贼困难
4.S
OA
架构
S
OA
(Service Oriented Architecture)
面向服务的架构
提供一个消息总线,各个服务之间调用都是去寻找消息总线
长处:
调用明确
利用
服务治理中央
资助我们维护复杂的调用关系
缺点:
依赖性
服务有依赖性,可能会因为一个服务的问题,导致多个体系不可用(拆分的不够彻底)
5.
微服务
架构
也是拆分,但是夸大的是原子化拆分,
微服务
架构在某种程度上是S
OA
继续发展的下一步,更加夸大
彻底拆分
,
每个服务遵循单一职责,自己负责自己的事情,不互相干涉,如果双十二,订单任务量大,可以在搞一个订单服务。
各个服务之间相互调用,利用
注册中央
,将各个服务的地址设置到服务设置中央里面。
长处:
原子化
原子化拆分,独立打包,保证每个
微服务
有清楚任务划分,利于扩展
缺点:
难
分布式体系开发技能本钱高,比如分布式事务等
服务件怎样调用?需要方案 和具体技能实现
注册中央?具体技能实现
6.聊一聊Spring Boot与Spring Cloud的关系
Spring Boot是Spring的一套快速设置脚手架,可以基于Spring Boot快速开发单个微服务;
Spring Cloud是一个基于Spring Boot实现的云应用开发工具。
Spring Boot专注于快速、方便集成的单个个体;
Spring Cloud是关注全局的服务治理框架。
Spring Boot利用了
约定大于设置
的理念,很多集成方案已经帮你选择好了,能不设置就不设置;
Spring Cloud很大的一部门是基于Spring Boot来实现。
Spring Boot可以脱离Spring Cloud独立利用开发项目;
但是Spring Cloud离不开Spring Boot,属于依赖的关系。
Spring Cloud是解决微服务问题的一个解决方案,有很多个组件组成
以是为什么用:
SpringCloud。高并发,高可用
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
×
回复
使用道具
举报
返回列表
用户云卷云舒
+ 我要发帖
登录后关闭弹窗
登录参与点评抽奖 加入IT实名职场社区
去登录
微信订阅号
微信服务号
微信客服(加群)
H5
小程序
快速回复
返回顶部
返回列表