在业务系统环境里,“事件”这个术语意味着一个定义明确、分类清晰的业务条件发生了。在这个环境下的事件提供了恰到好处的信息,以便接收方能如期响应所发生的特定类型的事件。这些事件均以业务为焦点;比如说,新客户的增加,员工辞职,支票签发,项目支出超过了预算的10%,等等。 使用事件驱动方案时,作为消费一方的应用可监控特定的业务事件,作为响应,它可以选择忽略该事件,执行即时动作,为了更好的效率而延迟响应,或将信息与从其他事件中接收到的信息组合起来,形成对业务的集成视图。
消费应用本身也可能产生新的业务事件,可被其他消费应用做进一步的处理。产生该事件的应用不需了解其消费者,也不需要明白事件是如何被消费的……
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
在业务系统环境里,“事件”这个术语意味着一个定义明确、分类清晰的业务条件发生了。在这个环境下的事件提供了恰到好处的信息,以便接收方能如期响应所发生的特定类型的事件。这些事件均以业务为焦点;比如说,新客户的增加,员工辞职,支票签发,项目支出超过了预算的10%,等等。
使用事件驱动方案时,作为消费一方的应用可监控特定的业务事件,作为响应,它可以选择忽略该事件,执行即时动作,为了更好的效率而延迟响应,或将信息与从其他事件中接收到的信息组合起来,形成对业务的集成视图。消费应用本身也可能产生新的业务事件,可被其他消费应用做进一步的处理。产生该事件的应用不需了解其消费者,也不需要明白事件是如何被消费的。结果,我们得到的是一个非常松耦合、高伸缩性、灵活且变更成本低的应用结构。
在事件驱动的环境里,不存在其他交互模型中出现的固定的消费者—供应者关系。相反,业务应用会通告某一特定业务事件的产生,任何侦听该事件的应用就成为了消费者。消费者仅接收刚好够用的信息来唯一识别出该事件,可自由地按需对事件进行处理。其他的方案导致传递庞大、复杂的数据集给所有消费者,而不管其是否需要整个数据集的数据,给伸缩性带来了负面影响,并增加了变更成本。
在这个事件驱动模型中,新的消费者可以在无需对现有业务系统进行任何改变的情况下被添加进来。与不得不对现有的时间—请求驱动型业务应用开发昂贵的新功能不同,事件驱动型应用无需冒稳定性和性能下降的风险,新功能可通过应急部署或在云上的应用提供出来。