写点什么

利用事件简化系统架构

  • 2013-05-02
  • 本文字数:636 字

    阅读完需:约 2 分钟

在小型业务组件之间使用事件进行交互可以简化系统架构,上周 Russ Miles 在探讨“通过事件简化架构( Architectural Simplicity through Events )”时谈到了这一点。

简洁真的非常重要 Barbara Liskov QCon London 2013 的主题演讲中这样说。资深顾问 Russ Miles 对此深表赞同。他的经验是,团队的开发速度经常因所编写代码体积和复杂性的增长而放缓。他认为简化架构是帮助团队保持开发势头并加快开发过程的最佳方式。

对 Russ 而言,组件结构在简化架构方面非常重要。将组件放置在传统的分层模型中往往会把事情弄得一团糟。因此他创建了 Life-Preserver 模型(形成了一个环),所有的基础设施软件都在环上处理集成,而核心业务组件在环内加入业务价值。他指出该模式与 Alistair Cockburn 创建的六边形架构( Hexagonal Architecture )风格非常相似。

事件

下一步是定义组件如何彼此合作。因为我们很可能并不是一开始就知道所有交互,因此可以通过发送事件保持系统的灵活性。组件要遵守的唯一契约是事件的接收与广播,这为我们带来了一个标准的事件驱动架构,不过该架构是组件级的。

管道与过滤器

再进一步,Russ 几乎将组件缩减成了函数,从强类型事件变为简单的数据,比如,以文档或XML 的形式,使核心通信方式与集成组件和外部事件之间的通信方式相同。这一步使架构变为了在小型组件之间分享不可变数据,而每个组件就是负责对数据做某种处理并返回数据,这就是管道与过滤器模式,不过是在系统架构内部而已。

查看英文原文: Events bring Simplicity to a System’s Architecture

2013-05-02 08:544475
用户头像
臧秀涛 略懂技术的运营同学。

发布了 300 篇内容, 共 149.8 次阅读, 收获喜欢 35 次。

关注

评论

发布
暂无评论
发现更多内容

大发大小单双最安全的打法

Geek_89ba7f

深度解析:利用1688 API获取商品详情的全面指南

Noah

突破Web3红海,DePIN如何构建创新生态系统?

TechubNews

web3、

NineData和华为云在一起!

NineData

数据库 DevOps 华为云 NineData GuassDB

在 Go 语言中如何让结构体不可比较?

伤感汤姆布利柏

Java实现管线拓扑关系连通性分析

不在线第一只蜗牛

Java 深度学习 优化

国内公司访问国外服务器网络解决方案

Ogcloud

SD-WAN 企业组网 SD-WAN组网 SD-WAN服务商 SDWAN

迁移方案详解 | 使用YMP从异构数据库迁移到YashanDB

YashanDB

数据迁移 yashandb 崖山数据库

软件测试学习笔记丨JUnit5标记测试用例

测试人

软件测试 测试开发

HDC 2024 | 华为云云原生开源+OpenHarmony,加速开发者应用创新

华为云开源

开发者 云原生 华为开发者大会 华为云开源

当程序员遇上PPT,会碰出什么火花?

秃头小帅oi

2024 Intersolar Europe,这家中国能源新秀再次瞩目!

科技汇

草莓不是莓,西瓜才是莓——解读 Kubernetes 中被驱逐的 Pod

小猿姐

Kubernetes 云原生

“算启未来”,九章云极DataCanvas公司与您相约WAIC 2024

九章云极DataCanvas

百倍提升7B模型推理能力 昆仑万维携手新加坡南洋理工大学发布Q*算法

新消费日报

怎么在国内进行tiktok海外直播?

Ogcloud

Tik Tok直播 Tik Tok直播网络 Tik Tok tiktok运营 tiktok直播

惊艳!老司机熬夜总结的Python高性能编程,高效、稳定、快速!

我再BUG界嘎嘎乱杀

Python 后端 高性能 开发语言

AI Agent 开发者对话:科研和商业化落地

奇绩创坛

人工智能 创业 AI 大模型 agent

完美解决 WebSocket 连接失败的技巧

Liam

程序员 后端 websocket

交互式原型设计神器:Axure RP 9 for Mac/win版中文激活版

你的猪会飞吗

mac软件下载 苹果软件下载

GitHub星标破千Star!Python游戏编程的初学者指南

我再BUG界嘎嘎乱杀

Python 入门 开发语言 零基础 游戏编程

GPT-4o差点没及格!首个多任务长视频评测基准,它有亿点难

Openlab_cosmoplat

ChatGPT GPT-4 人工智能、

百度智能云升级3款大模型应用:面向三类场景打造企业“超级员工”

极客天地

利用事件简化系统架构_架构_Jan Stenberg_InfoQ精选文章