熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> Java核心技術 >> 正文

BEA Tuxedo 開發心得

2013-11-23 19:36:55  來源: Java核心技術 

  兩大賣點資源級事務可靠消息隊列
  優點
   系統采用C/C++開發執行效率高於JAVA適合於OLTP系統;
   Tuxedo以API方式屏蔽系統細節簡化編程以較少的API函數調用即可開發一個應用;
   可以多個Server並行處理提高處理能力擴充性非常好可以根據當前負載動態啟動停止多個Server;
   資源級(QueueOracleInformix)的全局事務保證交易的完整性;
   可靠消息隊列(Queue)實現數據的可靠傳輸而且可以納入Tuxedo事務中可以和數據庫操作同時提交或者回退保證系統級事務的一致性;
   數據依賴路由事先確定數據的流向人工調整系統的負載;
   支持分布式系統 Tuxedo/Domain結構中各個域相互獨立通過信任關系調用對方的Service可以方便復雜系統的劃分支持跨域事務
   提供易於管理的工具方便地管理整個應用
  
  缺點
   速度問題: 作為一個適用於OLTP系統的交易中間件若不采用XA方式需要用戶自己控制事務;若采用XA方式由於要記錄全局事務日志(TLOG)處理非常慢尤其是處理實時任務時Server是被動的發起者調用Server如果結果要記錄到數據庫執行的方式為單條提交速度更是無法忍受(<100條記錄/秒).如果沒有數據庫,或者文件操作,速度非常快.但是一般情況下結果都是要入庫的.
  作為Tuxedo一大賣點的可靠隊列(Queue)速度更是無法忍受, <50條/秒
  BEA建議在實時處理中打包(幾十條)處理,速度確實提高很多,但失去了實時的意義,而且要控制打包和拆包,按記錄字段路由等Tuxedo優勢都喪失了。TW.wiNgwiT.coM
  2. 增加了開發、調試、測試的復雜度: 開發Server使用C語言(訪問數據庫嵌入SQL,如:Pro*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的實力.
  

From:http://tw.wingwit.com/Article/program/Java/hx/201311/27187.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.