免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 4327 | 回复: 0
打印 上一主题 下一主题

[Tuxedo] BEA Tuxedo 开发心得 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-03-25 11:23 |只看该作者 |倒序浏览
两大卖点:资源级事务、可靠消息队列;
  优点:
  1. 系统采用C/C++开发,执行效率高于JAVA,适合于OLTP系统;
  2. Tuxedo以API方式屏蔽系统细节,简化编程,以较少的API函数调用即可开发一个应用;
  3. 可以多个Server并行处理,提高处理能力,扩充性非常好,可以根据当前负载动态启动停止多个Server;
  4. 资源级(Queue,Oracle,Informix...)的全局事务保证交易的完整性;
  5. 可靠消息队列(Queue)实现数据的可靠传输,而且可以纳入Tuxedo事务中,可以和数据库操作同时提交或者回退,保证系统级事务的一致性;
  6. 数据依赖路由,事先确定数据的流向,人工调整系统的负载;
  7. 支持分布式系统, Tuxedo/Domain结构中各个域相互独立,通过信任关系调用对方的Service,可以方便复杂系统的划分,支持跨域事务.
  8. 提供易于管理的工具,方便地管理整个应用.
  
  缺点:
  1. 速度问题: 作为一个适用于OLTP系统的交易中间件,若不采用XA方式,需要用户自己控制事务;若采用XA方式,由于要记录全局事务日志(TLOG),处理非常慢,尤其是处理实时任务时,Server是被动的,发起者调用Server,如果结果要记录到数据库,执行的方式为单条提交,速度更是无法忍受(<100条记录/秒).如果没有数据库,或者文件操作,速度非常快.但是一般情况下结果都是要入库的.
  作为Tuxedo一大卖点的可靠队列(Queue)速度更是无法忍受, <50条/秒
  BEA建议在实时处理中打包(几十条)处理,速度确实提高很多,但失去了实时的意义,而且要控制打包和拆包,按记录字段路由等Tuxedo优势都丧失了。
  2. 增加了开发、调试、测试的复杂度: 开发Server使用C语言(访问数据库嵌入SQL,如ro*C),实现业务逻辑;前台使用可视化开发环境,用来输入数据和显示数据. 开发任务比两层结构多了很多,如果再使用存储过程,调试需要前台界面、后台Server、存储过程协调进行,大大增加了调试的复杂度,而且一般的开发队伍中都是做前台界面的专门做界面,开发后台的专门做后台,这样组装调试就更加困难了。
  3. 事倍功半的查询处理: 交易处理开发复杂还划算,因为毕竟Tuxedo带给了我们并行、可靠、全局事务等好处,但是使用三层结构做查询处理就太亏了,本来就是简单的给一个条件查出结果显示就OK了,现在要前台输入查询条件,传送给Tuxedo Server,Tuxedo Server根据输入的条件查询数据库,再把数据传送给前台。在Tuxedo中一般使用FML传送数据,若结果有很多,还要控制翻页等功能,复杂得一塌糊涂。若使用两层结构(如PB/VB+Oracle),举手之劳!
  4. 其它问题:
  a. 域Server(GWADM)经常DOWN,不报任何错误,BEA正在解决;
  b. 多机的跨域事务经常无法提交,不报任何错误;
  c. QUE在网络不是特别好的情况下,居然会不先进先出(设置了FIFO).
  其它小的问题多多....
  在开发人员眼里,任何工具总是好多缺点,但是Tuxedo毕竟是中间件业界的老大, 它提供给了我们许多优越的特性. 其它中间件问题比Tuxedo还要多.
  而且BEA在中间件和应用服务器行业绝对是老大哥, “世界1000强”企业排名中的全部24家电信公司, 世界最大的前40家电信公司中的38家都是BEA的客户
  Tuxedo作为TPC-C测试的首选中间件平台(80%以上), IBM,HP都有自己的中间件,但是测试无一例外都选择了Tuxedo. 足以见得TUXEDO的实力.
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP