Coherence 分布式处理与事件监听技术解析
1. 并行任务处理
当需要等待多个预定任务中的任意一个完成时,可以使用 waitForAny 方法。例如,要实现一个警报通知功能,可通过电子邮件或短信发送通知,但只需确保其中一种方式成功即可。此时,可以同时安排电子邮件和短信通知任务,并使用 waitForAny 方法阻塞,直到至少有一个任务完成。
任务完成后,可通过调用相关 WorkItem 的 getResult 方法来检查执行结果。该方法要么返回最终的 Work 实例(执行过程中可能已被修改),要么在任务的 run 方法抛出异常时抛出异常。
不过,Coherence Work Manager 存在一定限制,与 Invocation Service 一样,不能保证任务一定会被执行。因此,对于执行语义要求比“最多执行一次”更严格的任务,不应使用 Work Manager。
2. Coherence Incubator
Coherence Incubator 是由 Brian Oliver 领导、Oracle 赞助的开源项目,它为分布式执行提供了更多选择,如 Command、Functor 和 Processing 模式。此外,它还在 Coherence 之上实现了存储转发消息传递,以及用于跨数据中心同步多个 Coherence 集群的推送复制框架。更多详细信息可查看其官方网站(http://coherence.oracle.com/display/INCUBATOR/Ho
超级会员免费看
订阅专栏 解锁全文

1万+

被折叠的 条评论
为什么被折叠?



