单体框架、垂直框架、分布式框架、微服务框架简述 和区别

ゝ一世哀愁。 2023-10-03 20:05 75阅读 0赞

SSM以及SSH都为单体架构 前后端分离是 SpringBoot框架属于垂直应用架构

  • 单体架构

单体架构大致就是将所有的逻辑和业务写在同一个项目中 一般网站流量小 并且只需要一个应用 将所有代码部署在一起 可以减少开发、部署、运维的成本

优点:项目架构简单、小型项目、开发成本低、维护方便

缺点:全部的功能都集成在了同一个工程中 对于大型项目来讲不易于开发和维护 项目模块之间紧密的耦合 单点容错率低 无法针对不同模块进行针对性优化和水平扩展 并且如果单体框架出现OOM内存溢出 可能会导致项目整个应用无法正常使用 容错率低

  • 垂直架构

垂直应用架构就是将单体架构拆分为多个互不相干的应用 大大提升了效率 比如将一个单体是电商应用拆分为:1、电商系统(用户管理、商品管理、订单管理) 2、后台系统(用户管理、订单管理、客户管理) 3、CMS系统(广告管理、营销管理) 这样拆分成多个后 一旦出现用户量变大 需要增加电商系统的节点就可以了 而无需增加后台和CMS的节点

优点:系统拆分实现了流量分担 解决了并发问题 而且可以针对不同的模块进行相对的优化和水平扩展,一个系统的问题不会影响其他的系统 容错率大大提高

缺点:系统之间相互独立 无法进行相互调用 系统之间相互独立 会有重复的开发任务

  • 分布式架构

垂直应用越来越多时 重复的代码量也会递增 所以出现了分布式架构 它将工程拆分为表现层和服务层两个部分 服务层中包含业务;逻辑 表层只需要处理和页面的交互 业务逻辑都是调用服务层的服务来实现

优点:抽取公共的功能为服务层 提高代码的复用性

缺点:系统间的耦合度变高 调用关系错综复杂 难以维护

  • 微服务框架

在微服务架构中每个服务都是单独部署 微服务架构也更加的轻便(轻量级) SOA框架中跨域数据库存储会发生共享 但是微服务强调每个服务都是单独的数据库 完全保证了每个服务之间不会相互的发生影响 由此可见微服务架构比SOA架构更加的适合开发、迭代版本 因为粒度很精细

优点:服务原子化拆分 独立打包、部署和升级 保证每个微服务的服务请时刻见 利于扩展 微服务之间采用了RestFul等轻量级http协议相互调用

缺点:分布式系统开发的技术成本高(容错、分布式事务等) 复杂性高 各个微服务进行分布式独立部署 当进行模块调用时 分布式也会更加的麻烦

发表评论

表情:
评论列表 (有 0 条评论,75人围观)

还没有评论,来说两句吧...

相关阅读

    相关 分布式服务框架HSF

    HSF提供的是分布式服务开发框架,taobao内部使用较多,总体来说其提供的功能及一些实现基础: 1.标准Service方式的RPC   1)、Service定义:基于

    相关 分布式 服务框架

    网站功能丰富后出现的问题以及解决方法 ![这里写图片描述][SouthEast] 当应用功能增加后,对网站的稳定性会产生一定的影响,这时会选择把应用拆小,保持每个应用都

    相关 服务框架

    微服务在开发领域的应用越来越广泛,因为开发人员致力于创建更大、更复杂的应用程序,而这些应用程序作为微小服务的组合能够更好地得以开发和管理。这些微小的服务可以组合在一起工作,并实