架构模式 节选自《闻缺陷则喜》(此书可免费下载)

架构模式很多,仅举三例。

        1. 分层架构

经典三层架构最优场景,数据库管理软件(增删查改),大部分企业软件都是这类。经典三层架构自顶向下由用户界面层、业务逻辑层与数据访问层组成。《领域驱动设计》中的分层架构:用户界面层、应用层(给调用者提供完整的业务用例)、领域层、基础设施层。

分层依据:一,顶层更面向业务和用户,底层更面向通用和硬件。二,面对变化。三,同层处于同一抽象层次。

注意:如果某一层大部分函数只是简单调用低层的函数,则此层应该取消。

        1. 事件总线架构

三个参与者:事件总线、发布者、订阅者,发布者只能发消息给事件总线,事件总线只能发消息给订阅者。消息也称为事件。此架构非常适合于分布式系统,异构系统也没有影响。一个模块可以同时是发布者和订阅者。

时间总线模块和消息队列模块的区别:前者收集、转发消息,不需要知道有多少个订阅者;后者直接处理消息或转给子模块。消息队列相对消息优点:异步、削峰。消息相对于直接函数调用的优点:解耦。

        1. 黑板模式

黑板模式由3个主要组成部分组成:黑板:包含来自解决方案空间的对象的结构化全局内存。知识源:专门的模块和它们自己的表示。控制组件:选择、配置和执行模块。使用场景:语音识别、车辆识别和跟踪、蛋白质结构识别、声纳信号的解释等。这类问题具有如下特点:可以分解成多个子问题,但每个子问题都属于不同的专业领域。要解决子问题,需要使用不同的表示法和范式,往往没有既定策略。

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

闻缺陷则喜何志丹

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值