openadaptor1.x 架构分析

Openadaptor1.x,一款基于消息的系统集成工具,轻量级,简单。它将不同系统间的消息传递抽象成一个Adaptor。

一、体系结构
Adaptor是一个单向的消息传递通道,基于管道、过滤器体系结构,可以有多个数据源,多个数据目的地,源、目的地可以支持多种协议:flat file、socket、database、rmi、jms等等。Adaptor处理数据分为三个阶段:数据提取、数据变换、数据写入,这三个处理阶段由三个不同类型的组件完成Source、Pipe、Sink,组件之间的协调有Controller控制。Source组件提取数据,并将其转换成Adaptor理解的Message,Pipes组件变换Message,Sink组件将Message转换成Sink能理解的数据,最终写入。处理流程如下(附件一):




二、系统流程

组件类结构(OO味道很浓的,有兴趣的可以下载代码好好研究研究)这里就不多说了,直接上流程图(附件二/三):



补充一句:openadaptor是一套框架,解释流程配置文件,组装配置文件中配置的组件形成一个Adaptor流程。而配置文件是有GUI工具画服务流程时候生成的。
由流程图可以看出来,openadaptor内部的消息处理是同步的,这个组件完成之后,下一个紧接着开始,由Controller控制消息流向。

三、线程模型
(附件四)

几点说明:
1、 Openadaptor1.x 开发的比较早,没有用到concurrent包,代码中还有好多wait, notify, sleep用来控制线程
2、每个Source组件对应一个线程,多线程共享一个Controller,因此多个Source线程之间需要同步。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值