首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >复杂事件处理

复杂事件处理
EN

Stack Overflow用户
提问于 2012-04-29 03:25:59
回答 1查看 547关注 0票数 2

需要一些关于设计事件处理系统的建议。从高层次上讲,我的Java服务器接收各种请求,执行并(同步和异步地)响应它们。

流程如下:

a)低级类从客户端接收事件。此类有一个对MessageRouter类的引用。一旦它获得了事件,它就简单地调用MessageRouter上的路由(事件事件)。

b) MessageRouter类将事件排队,并在单独的线程中确定消息的类型,找到适当的处理程序并将消息交给它。

c)处理程序执行该消息。

d) ResponseRouter收集响应并将其写回。

我的问题是:

1)我应该如何设计c),因为我需要引用4-5个其他的“管理器”类来执行请求。另外,c)是否应该有对d)的引用以将响应路由回来?

2)类似地,d)需要引用其他类来写回响应,因为它们可以同步和异步完成。ResponseRouter是否应该引用它需要的所有类?

主要,我正在寻找一种设计模式(或它们的组合),以便以高效和优雅的方式执行事件及其响应。

EN

回答 1

Stack Overflow用户

发布于 2014-12-09 23:43:28

至于对Q2的回答,因为处理程序可以异步执行,所以我建议在MessageRouter中处理请求和响应会更简单,也许可以引用另外两个实现RequestRouter和ResponseRouter接口的对象。

当处理程序完成时,它可以以同步或异步方式将其结果返回给MessageRouter。

这样,处理程序就不需要引用ResponseRouter了。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10366803

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档