笨笨的思想片断

零碎片断,杂七杂八。
posts - 25, comments - 79, trackbacks - 0, articles - 0

基于Java的高性能TP Monitor的设想

Posted on 2005-12-06 17:49 笨笨 阅读(2182) 评论(0)  编辑  收藏 所属分类: 软件开发
目前的高性能TP Monitor如 TUXEDO CICS全部是基于 C/多进程开发而成

国内市场被BEA/IBM高度垄断,可能也就 东方通TongEASY的能虎口夺食。

从TP Monitor的在金融业的应用经验来看,TP Monitor主要作用是:
1 提供一个高性能、高稳定的通讯框架:(如银行总分互联、应用之间互联)
2 支持大并发的交易处理平台(在线交易实时处理,但一般不作为事务管理器,因为全局事务代价过高,主要用数据库自身事务机制)。
3 支持软件负载均衡,支持水平扩展(如:TUXEDO MP)。

开源App Server如Jboss/Jonas 全部采用纯Java实现,性能是个问题,跟TUXEDO/CICS相比。

假设我们要自行实现一个可用的TP Monitor,必须要解决上述几点。


从Java的性能来看,它的内部代码执行效率不低,主要弱在:
1 socket通讯效率低
2 ipc机制不支持
3 数据库访问效率低(实际的交易实现效率低,不管用EJB还是POJO)

目前有考虑
1 高性能的通讯框架,必须采用C代码实现。Java做不到Zero Copy,并且JNI在Java和本地C代码之间复制内存代价也很高。
2 大并发的处理平台,这个是Java的优势所在,Java对于同步、并发的实现,写起来简单
3 IPC支持(SystemV消息队列、共享内存、信号灯),标准 Java 库缺乏,但是可以通过JNI实现,实现策略可以参考SWT的实现策略。
4 用户SERVICE实现(数据库访问),采用C实现,充分利用高效的数据库本地接口。

只有注册用户登录后才能发表评论。


网站导航: