Spring-cloud Alibaba 深入学习

本文介绍了从传统的单体架构到分布式架构,再到面向服务架构(SOA)和微服务架构的演进过程。单体架构简单易部署,但耦合度高;分布式架构降低了模块间的耦合;SOA通过HTTP+JSON实现服务解耦,但存在效率低和服务治理问题;微服务架构进一步细化服务,提高了开发效率,但也带来了分布式事务和锁的挑战。适合不同规模团队和技术需求的选择。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.传统的单体架构

简单理解为单点架构,就是我们经常写的SSM或者SSH的项目,采用分层架构模式。即数据访问层(dao层),业务逻辑层(service),控制器层(controller),从前端到后端所有的代码可以由一人完成。

就是把项目的代码方到同一个项目中,部署在一个tomcat上面。

优点:结构简单,部署简单 开发简单 运维简单

缺点:代码耦合度高 项目启动慢 技术单一  

如果多人同时开发 ,会发生冲突 、所以这种耦合度不便于开发。

只适用于小团队或者个人开发。

某刻模块不可用,会导致整个系统下线,无法使用

使用场景: 传统项目 个人学习

2.分布式架构 

将原来的单体架构的项目进行模块化的拆分,即使某个模块宕机也不会使项目下线。降低了模块之间的耦合度。比如将一个商城系统进行拆分:

3.SOA面向服务架构

缺点:1.采用soap协议实现通讯,xml传输非常重,效率低下

           2.服务化管理和治理设施不够完善

           3.不适合前后端分离项目

将控制器层和业务逻辑层实现拆分 通过(http+json)的方式实现

4.微服务架构的基本概念 

基于SOA架构的基础上演变而来,对于服务的拆分会更加细粒度,提高开发效率,服务于服务之间通讯采用Restfu形式,数据交互格式采用HTTP+json,http可以实现跨语言的平台,完成通讯。

优点:1.服务拆分更加细粒度,提高开发效率

           2.服务与服务之间独立部署,互不影响。降低耦合度

缺点:1.分布式事务(解决方案 rabbitmq、rocketmq事务消息、seata)一致性问题

           2.分布式锁

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值