按图索骥成语故事意思 业务流程如何按图索骥?以“事件驱动”架构系统

2019-06-25 - 按图索骥

事件,指对特定的对象产生一定影响的事情。事件既是技术架构概念,也是业务概念。以事件作为行为驱动的编程模型架构,称为事件驱动架构(Event-Driven Architecture,EDA)。在企业的信息化系统建设中,常常可以看到事件驱动的影子,如消息服务总线的设计,面向服务架构的设计等等。

按图索骥成语故事意思 业务流程如何按图索骥?以“事件驱动”架构系统
按图索骥成语故事意思 业务流程如何按图索骥?以“事件驱动”架构系统

现实生活中的事件,我们可以看成是一连串事件的反馈。警察收到附近失窃的报警事件而出动,司机收到车距过近的警告事件而减速,人们收到今天下雨的预报事件而出门带伞。业务流程是现实操作流程的归纳与统一,故也可以使用事件模型去描述,使用事件驱动主要有以下三种情况:

按图索骥成语故事意思 业务流程如何按图索骥?以“事件驱动”架构系统
按图索骥成语故事意思 业务流程如何按图索骥?以“事件驱动”架构系统

EDA以事件为媒介,实现组件或服务之间最大松耦合。当组件A执行的逻辑需要触发组件B的逻辑时,不要直接调用它,我们可以将触发事件发送到事件分派器。组件B将侦听调度程序中的特定事件,并在事件发生时执行操作。这意味着A和B都将取决于调度器和事件,但他们之间将不会知道对方存在,它们将被解耦。

按图索骥成语故事意思 业务流程如何按图索骥?以“事件驱动”架构系统
按图索骥成语故事意思 业务流程如何按图索骥?以“事件驱动”架构系统

比如一个失窃报警事件,发布方可以为报案者,也可以为报案者的邻居;接收方可以是A警察,可以是B警察,也可以是整个警署。报案者无需关心由谁来处理这个案件,只关心我确实已经报案了;警察也无需知道是谁报的案,只关心确认是有这个案件去处理。

理想情况下,调度器和事件都不应该在组件之间存在。组件之间通过事件进行通讯(结构上解耦,行为上耦合)。事件在组件之间共享,是应用程序的核心部分。在领域驱动设计(DDD)中,事件属于共享内核Shared Kernel。组件依赖于共享内核,但彼此不会意识其存在。

有时候一个任务的子任务需要耗费相当长的时间,但我们并不希望其余的子任务要等待当前耗时的子任务执行完毕。在这种情况下,我们希望将其作为异步,或使用多线程去处理该任务。

以上述失窃报警事件为例,警署收到报警进行破案,在这期间,他需要要调查区域A、B、C、D,于是向区域A、B、C、D的分局都转发了失窃报警事件,这样四个地区分局便并行执行调查任务。

大多数应用程序都需要使用数据,而最为典型的使用方式在于随用户使用对数据状态进行更新,从而保持其始终处于最新,如常用的CURD。然而事件驱动模式定义了一种新的事件序列驱动型数据操作处理方法,其中每一事件都被记录在仅附加存储机制内。每个事件代表一组数据变更,应用程序可以随时读取事件的历史记录,并对同该实体相关的所有事件进行回放与消费,借此重新展现该实体特定历史点的状态。

仍以上述失窃报警事件为例,案件是该事件核心处理的对象。警察会在档案上记录该案件的每个环节执行情况 。通过阅读该案件的档案,可以追溯到某一节点的当时案件状态。

结合协作云SRM系统,比如寻源模块的议价流程,采取事件驱动架构,包含以下事件发布与订阅:

对于决标后的操作,传统做法方式是直接在原来的评标方法里面,添加判断,如果该价格被决标,则执行后续的三步副作用操作。而在事件驱动中,则是发布决标事件,同时添加三个决标事件监听器,分别执行后续的三步副作用操作。

这样一来无需改动原有逻辑,二来作为可插拔的方式进行添加,不仅解耦,且允许并行执行。后续三步操作之所以被称为副作用,是因为在当前评标流程中,非必须执行的。

结语

事件可以平衡代码的可维护性与扩展性,提高系统性能,事件溯源也为系统数据提供了可靠性与阅读性。然而,事件驱动是一把双刃剑,在引入实践中,会遇到各种各样的难题,本文篇幅有限便不再展开。这是一条存在自身危险的道路,概念和技术的复杂性在增加,而且任何一种的滥用都会产生灾难性的后果。

相关阅读
成语按图索骥的意思 成语按图索骥的意思 成语按图索骥的故事

相传,春秋时期有个叫伯乐的人,他相马的本领无人能及,只要他绕着马走上一圈,就能根据马的长相判断出马的好坏。无论是饿得皮包骨头的良马,还是养得膘肥体壮的劣马,都骗不过他的眼睛。伯乐年老的时候,根据自己多年积累的经验。

按图索骥的典故 按图索骥的典故 按图索骥的故事

春秋时候,秦国有个叫孙阳的人,擅长相马,无论什么样的马,他一眼就能分出优劣。他常常被人请去识马、选马,人们都称他为伯乐(伯乐本是天上的星名,据说负责管理天马)。有一次,孙阳路过一个地方,忽见一匹拖着盐车的老马冲他叫个不停。

按图索骥的意思和解释 按图索骥的意思和解释 周五看图导航:回踩尚未到位操作按图索骥

七月二十四号,大盘连三阳,我在文章中宣告进入短线回踩转折时间(如下图) 大盘在周三小跌1.9点, 周四扩大跌幅下跌21点收在2882,没有意外地又是另一次事先预告,事后验证!!5.217.26的文章预告与验证这个短线的回踩时间仍旧不是盯著盘面才有的灵感或想法。

按图索骥的意思 按图索骥的意思 按图索骥 这些股有可能是下一个骆驼股份!

科创板各项规则刚一落地,已经有公司按捺不住了。新三板公司金达莱4日晚公告称,公司于当日召开董事会会议,审议通过了《关于公司申请首次公开发行股票并在科创板上市的议案》。公司拟申请首次公开发行人民币普通股股票(A股)并在上海证券交易所科创板上市。

按图索骥典故 按图索骥典故 大竞赛大比武|北上京城 东营精准招商“按图索骥”

北上京城招引诚意足,剑指鲁北高端石化产业基地核心区6月6日上午,东营市招商引资招才引智北京恳谈会在北京举行,首都与东营的激情碰撞引来四方客商。东营市与中国医药集团、中国能源工程集团、中国振华进出口有限公司等知名央企确定在医药、高端化工、新能源等领域开展深度合作。

推荐阅读
按图索骥的意思和解释 按图索骥的意思和解释 周五看图导航:回踩尚未到位操作按图索骥
按图索骥典故 按图索骥典故 大竞赛大比武|北上京城 东营精准招商“按图索骥”
陈茵媺长相 陈茵媺长相 陈茵媺推剧放长假待产 有望与陈豪闪婚
韩磊北京摔死女童凶手 韩磊北京摔死女童凶手 北京摔死女童案凶手韩磊一审被判死刑
中软国际邮箱 中软国际邮箱服务器
红枣枸杞粥的功效 红枣枸杞粥的功效和做法
2019打黑除恶专项斗争 2019打黑除恶专项斗争 农行河池分行“四加强”开展打黑除恶专项工作