一图速学主流软件架构模式
⭕️ 事件驱动架构(Event-Driven Architecture, EDA):
在事件驱动架构中,系统的流程由诸如用户操作、传感器输出或其他系统的消息等事件决定。系统中的组件通过事件进行通信,事件处理程序响应这些事件。
🔑 关键概念:事件(Events)、事件处理程序(Event Handlers)、异步通信(Asynchronous Communication)。
⭕️ 分层架构(Layered Architecture):
分层架构将系统组织为不同的层次,每个层次承担特定的职责。通信通常只在相邻层之间发生,每层提供特定的功能。
🔑 关键概念:表示层(Presentation Layer)、业务逻辑层(Business Logic Layer)、数据访问层(Data Access Layer)。
⭕️ 单体架构(Monolith):
单体架构是一种传统方法,软件应用的所有组件和模块紧密集成在单一代码库中,并作为单一单元部署。这与微服务等分布式架构形成对比。
🔑 关键特征:单一代码库(Single Codebase)、紧密集成(Tight Integration)、单一部署单元(Single Deployment Unit)。
⭕️ 微服务架构(Microservices Architecture):
微服务将软件应用拆分为小型、独立可部署的服务。每个服务专注于特定的业务能力,并通过API与其他服务通信。微服务促进了可扩展性、可维护性和灵活性。
🔑 关键特征:独立可部署性(Independent Deployability)、服务隔离(Service Isolation)、去中心化数据管理(Decentralized Data Management)。
⭕️ 模型-视图-控制器(Model-View-Controller, MVC):
MVC是一种设计模式,将应用程序分为三个互联的组件:模型(Model,数据和业务逻辑)、视图(View,用户界面)和控制器(Controller,处理用户输入并相应地更新模型和视图)。
🔑 关键组件:模型(Model)、视图(View)、控制器(Controller)。
⭕️ 主从架构(Master-Slave Architecture):
在主从架构中,一个中心节点(主节点)控制和管理一个或多个从属节点(从节点)。主节点向从节点分配任务,从节点向主节点汇报。
🔑 关键组件:主节点(Master Node)、从节点(Slave Nodes)、任务分配(Task Distribution)。

