乐于分享
好东西不私藏

软件架构风格

本文最后更新于2025-10-14,某些文章具有时效性,若有错误或已失效,请在下方留言或联系老夜

软件架构风格

软件架构风格

• 分层(n层)架构
将软件划分为逻辑层,如表示层、业务层、持久层、数据库层,各层职责明确,便于维护和扩展,适用于传统企业应用等场景。
• 微内核架构
分离最小功能核心与扩展功能及客户特定部分,核心系统保持稳定,扩展部分可灵活定制,适用于需要高度可定制的应用,如插件化系统。
• 微服务架构
将软件应用设计为一组独立部署的小型模块化服务,各服务可独立开发、部署和扩展,适用于大型复杂应用,如互联网平台类产品。
• 基于空间的架构
解决大规模分布式系统的数据一致性、可靠性能和可扩展性问题,适用于高并发、大规模的应用场景。
• 点对点架构
属于水平(无代理)分布式系统,节点兼具客户端和服务端功能,适用于文件共享等去中心化场景。
• 领域驱动设计架构:
聚焦领域逻辑和复杂性而非技术,强调领域模型的构建,适用于业务逻辑复杂的应用,如金融、电商系统。
• 事件驱动架构
促进事件的产生、检测、消费和响应,适用于异步通信、高并发的场景,如实时数据处理系统。
• 发布-订阅架构
属于事件驱动的一种,消息发布者将消息发送到主题,订阅者接收感兴趣的主题消息,实现松耦合通信,适用于消息通知类场景。
• 模型-视图-控制器/呈现器架构:
MVC分离数据管理、用户界面和控制流的关注点;MVP是MVC的衍生,Presenter作为中间层处理逻辑,适用于界面与逻辑分离的应用,如桌面应用、Web应用。
• 解释器架构
将用高级语言编写的程序转换为可执行代码,适用于脚本语言、规则引擎等场景。
• 管道/过滤器架构
数据通过一系列过滤器处理,适用于数据处理流水线场景,如ETL(提取、转换、加载)系统。
• 编排架构
通过中央协调器(编排器)管理服务间的交互,控制服务间的数据流和控制流,适用于服务间依赖复杂的场景。
• ** choreography 架构**:
与编排架构相对,服务间通过事件等方式自主协调交互,适用于去中心化的服务协作场景。
• 主从架构
属于数据中心化架构,存在主节点和从节点,适用于数据复制、高可用的场景,如数据库主从复制。
• 命令查询职责分离架构:
分离数据存储的读写操作,实现读写负载的独立扩展和优化,适用于读写分离、高并发的场景,如大型Web应用。
• 面向对象架构
基于对象封装、继承、多态等特性构建,是传统软件开发的重要架构风格,适用于各类应用。
#多模态人工智能
本站文章均为手工撰写未经允许谢绝转载:夜雨聆风 » 软件架构风格
×
订阅图标按钮