几种主要的软件架构结构

这篇具有很好参考价值的文章主要介绍了几种主要的软件架构结构。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

常见的软件架构结构主要包含:分层架构、事件驱动架构、微核架构、微服务架构、云架构。以前很少去读理论的书,现在看书,发现这些理论很好理解,实际工作中多少都有接触,只是深浅不同。

一.主要的五类架构

1.分层架构

主要分为表现层、业务层、持久层、数据库层。算是比较传统的一种方式,之前的JSP、servlet、structs1、structs2、spingMVC、springframework、JDBC、ibatis、mybatis、hibernate、JPA、sqlserver、oracle、MySQL等,在分层架构中使用多。

2.事件驱动架构

之前系统间通信除了数据库表共享,还有API,后面也有使用过MQ来传递数据。后面一些物联网采用的架构更多是事件驱动。终端设备通过MQTT等协议上传数据,后端的事件处理器通过连接MQ服务器得到消息并处理。面对大量数据上传、cache也常在这类架构中使用。

3.微核架构

这一类的,我接触的很少。估计在嵌入式系统中用一些吧。之前听过一个前辈做的系统,基于.NET的技术,dll都存在数据库,需要什么功能,配置好了,从数据库自动加载dll。思想与之相近吧。特点是小,插件即插即用、相对独立。

4.微服务架构

最近今年比较流行,特别是各种中台兴起的时代。我接触也不深,做过一些项目。刚开始主要还是针对后端功能,后面前端也微服务化了。在软件生命中后期,维护的专业性、升级的难度还是比较大的,没有想象的那么简单。springboot、Eureka、Zookeeper、Spring Cloud Gateway、Zuul、Spring Cloud Config、Consul、Nginx、Ribbon、Zipkin、Docker、k8s、ELK、MQ等在微服务架构中使用较多。

5.云架构

架构设计接触的少,使用到有些局部的云产品,如百度的BAE、BOS、OCR、图像识别、图像分割等。后面也参与到一些云原生的项目。

二.后记

个人理解,如有不恰当之处,敬请谅解。从理论的角度,全面看一下各类架构,有利于理清思路。有的时候,一个系统或者平台不只有一种架构,可能有两种或者多种混合。几种类型的架构各有特点,各有适合的场景。所以,各种架构并不存在高明与愚笨之分,只有使用他的人才有高下之分。选择架构及相关技术,也不仅仅看场景,还要结合业主行业特点、维护难度、技术流行趋势带来的人才迭代等影响,综合考虑。文章来源地址https://www.toymoban.com/news/detail-826732.html

到了这里,关于几种主要的软件架构结构的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • DP读书:不知道干什么就和我一起读书吧——以《鲲鹏处理器 架构与编程》中鲲鹏软件的构成为例

    虽然清楚知识需要靠时间沉淀,但在看到自己做不出来的题别人会做,自己写不出的代码别人会写时还是会感到焦虑怎么办? 你是否也因为自身跟周围人的差距而产生过迷茫,这份迷茫如今是被你克服了还是仍旧让你感到困扰?来分享一下吧! 我就读了几天书,就这样了。

    2024年02月09日
    浏览(49)
  • 【软考】系统架构设计风格分类的个人理解

    个人适当学习了软考系统架构设计师中关于系统架构设计相关的内容,梳理了一下相关信息。 常见架构类型和常见分类 常见的软考中出现的系统架构列举如下: 分层架构 管道-过滤器架构 客户端-服务器架构 模型-视图-控制器架构,即MVC架构 事件驱动架构 微服务架构 黑板架

    2024年02月16日
    浏览(40)
  • 软件工程(十一) 系统设计分类

    我们知道需求规格说明书(SRS)落地之后, 就要开始着手系统设计了,看一下这个系统该如何来设计,并且如何实现。学习系统设计之前,需要先了解系统设计有哪些分类。 系统设计的分类如下 界面设计 结构化设计 面向对象设计( 最重要 ) 界面设计也叫做人机界面设计,属

    2024年02月11日
    浏览(50)
  • 软件架构设计(五) 软件架构风格-微服务

    微服务的概念 微服务顾名思义,就是很小的服务,所以它属于面向服务架构的一种。 微服务架构是一种架构模式,它提倡将单一应用程序划分为一组 很小的服务 (其实就是功能独立,职责单一),服务之间互相协调,相互配合,为用户提供最终价值。 微服务架构风格中每

    2024年02月10日
    浏览(45)
  • 软件架构设计(六) 软件架构风格-MDA(模型驱动架构)

    概念 模型驱动架构MDA, 全称叫做Model Driven Architecture。 Model:表示客观事物的抽象表示 Architecture:表示构成系统的部件,连接件及其约束的规约 Model Driven: 使用模型完成软件的分析,设计,构建,部署和维护等 开发活动 MDA起源于分离系统规约和平台实现的思想。之前我们在净

    2024年02月09日
    浏览(36)
  • 系统架构师---软件重用、基于架构的软件设计、软件模型

    目录 软件重用 构件技术 基于架构的软件设计 ABSD方法与生命周期 抽象功能需求 用例 抽象的质量和业务需求 架构选项 质量场景 约束

    2024年02月12日
    浏览(48)
  • 软件架构设计(二) 软件架构风格其他风格简介

    架构师备战(四)-软件架构设计(二) 软件架构风格其他风格简介 架构风格其实是很重要的知识,我们先了解了基本的五种架构风格, 我们之前也提到除了这五种风格之外, 还有一些没有收录在这几种风格之内的, 这次会去做一个探索。 概念 当软件被用来操作一个物理系统时,软件

    2024年02月10日
    浏览(46)
  • 系统架构设计师-软件架构设计(3)

    目录 一、软件架构风格(其它分类)         1、闭环控制结构(过程控制)           2、C2风格         3、MDA(模型驱动架构 Model Driven Architecture)         4、特定领域软件架构(DSSA)                 4.1 DSSA基本活动及产出物:             

    2024年02月15日
    浏览(64)
  • 系统架构设计师-软件架构设计(7)

    目录 大型网站系统架构演化 一、第一阶段:单体架构 到 第二阶段:垂直架构 二、第三阶段:使用缓存改善网站性能         1、缓存与数据库的数据一致性问题         2、缓存技术对比【MemCache与Redis】         3、Redis分布式存储方案         4、Redis集群切片的

    2024年02月14日
    浏览(72)
  • 系统架构设计师-软件架构设计(6)

    目录 一、物联网分层架构 二、大数据分层架构 三、基于服务的架构(SOA)         1、SOA的特征         2、服务构件与传统构件的区别 四、Web Service(WEB服务)         1、Web Services 和 SOA的关系 五、REST(表述性状态转移) 六、ESB(企业服务总线) 七、微服务         1、微

    2024年02月14日
    浏览(307)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包