Tuxedo 中间件学习心得 一
工作用用到了Tuxedo中間件技術,經過一段時間的使用后,有了一定理解,現在系統的學習一下Tuxedo
技術,以便工作中應用與學習。將學習心得順便手寫下來:
??????????????????????????????????????? Tuxedo 中間件學習心得 一
????? 一、Tuxedo Middleware 整體情況
????? 現在流行稱為 Application Server (應用服務器),它是C語言技術打造的一個應用服務器。是一個質量
比較好的軟件。
????? Tuxedo被廣泛應用于企業的核心系統領域,包括電信,金融,制造業等等領域。
????? Tuxedo 是C/S結構,界面是專門開發的,相對比較固定。與B/S相比,它有何多致命的弱點,比如頁面
比較固定,很難改動,一個版本出來到下一個版本出來,周期比較長等,跟不上企業發展的需求。目前統計,
有20%左右的軟件是用C/S架構的,但這并不是說C/S架構被淘汰掉了,它在固守著B/S架構目前還不能實現
領域。比如企業的核心業務系統,它是一個相對比較封閉的系統,它不需要外人來訪問它。另一方面,C/S結
夠輸入快,系統反應快,適合企業快速反應的要求,這是 B/S結構所比擬不了的。
????? Tuxedo技術比較簡單,精煉,相對于B/S來說。對學習者來說,能夠幫助學習者深入認識底層的知識。
對理解Linux/Unix,網絡技術,數據庫技術,包括企業核心業務的架構來說,都是很好的應用。
????? 二、Tuxedo Introduction?? (概述)
????? 1、Tuxedo 的各個方面的功能特征(the main features of tuxedo)
?????????? 上個世紀90年代初,企業將自己的核心業務系統從專有的大機紛紛轉向Linux/Unix 這種開放系統平
臺下。這種平臺為了支持大型用戶群,提高系統的容量,提高用戶數。就將原來的client-server這種兩層結
構轉變成了現在的三層結構或多層結構(n-Tier Client Server)。多層結構實際上也是三層結構。
?????????? 三層結構:
??????????????????????????????????? request service?????????????????????? execute DBMS logic?
????????? Presentation??????? -------------->???? Application??? -------------------->???? DBMS
???????????? (展示層)???????????? <--------------??? (業務邏輯層)? <-------------------??? (數據層)
???????????????????????????????????????? response??????????????????????????? DBMS status/data
???????
????????? Presentation???????????????????????????????? Business?????????????????????????????????????? DBMS
???????????? Services???????????????????????????????????????? Logic
????????? 展示層做為客戶端主要做展示和發送請求用的。
???????? 業務邏輯:承載業務邏輯的程序,不僅僅具有對數據增刪改查的SQL語句,還有復雜的業務邏輯。而
這個業務邏輯就存儲在application server 以 tuxedo 為代表,或者基于J2EE服務器weblogic等系統里。
????????? 數據庫:用于存儲數據,對外提供對數據進行增刪改查功能
????????? 整個流程是:客戶端向應用服務器 application server 發請求 request services ,應用服務器就
執行業務邏輯程序 Business Logic , 當業務邏輯執行到需要和數據庫打交道的時候,它會發出SQL語句,執
行DBMS邏輯,然后數據庫將執行后的數據返回到應用服務器,應用服務器再運行業務邏輯程序對返回的數據
進行加工,加工完以后,返回到客戶端。客戶端再用合適的界面將結果展示出來。
???????? 這種架構每個部分的職責非常分明,是目前很多企業核心系統架構。這種架構能支持的用戶數更多,容
量更大。
??????? 這種架構的好處是:Flexibility (靈活性強,容易修改增加功能方便等)
??????????????????????????????????
???????????? Growth??? (容易擴充,如將來用戶增多了可先對應用服務器進行擴充,擴充不夠了,再擴BMS)
???????????? Performance (是三層架構最主要的好處,體現在他能夠支撐的用戶數增加了)
?????? tuxedo的定位就定位在Application Server 這個層面上
????? 2、Tuxedo 中C/S 通訊的體系架構及機制 (the client-server communication mechanisms)
?????????? 中間件或者應用服務器最大的好處就是充當一個放大器的作用,我們可以假設一下,如果有1000或者
10000甚至更多的客戶端直接和數據庫打交道,數據庫很明顯是受不了的。那么,中間如果插了一個應用服務
器,應用服務器有消息隊列排隊機制,有多個進程線程的并發處理機制,它使得應用服務器維系著客戶端的成
千上萬個網絡連接,處理他們的應用請求,同時保證著中間件這個應用服務器和數據庫之間相對來說進行著比
較少的數據交流。中間件相當于放大了后臺系統的處理能力,使得這種三層架構的系統的能夠為更多的用戶服
務。
????? 3、Tuxedo 整體的體系架構(the tuxedo architecture)
?????????? tuxedo的實現現形式實際上就是一堆進程(tuxedo servers),這些進程中有一部分進程和
tuxedo客戶端連接,一部分進程利用消息隊列機制,從消息對列里取出來自客戶端的請求,來執行相應的業
務邏輯,必要時發送一些SQL語句到后臺的數據庫。數據庫將數據返回給tuxedo server ,然后tuxedo
server將相應的結果發送到tuxedo客戶端。
????????? tuxedo service (線程)是tuxedo server(進程)的一個函數,service要到server中注冊,這
樣server才知道它包含有多少個函數(service(name,客戶端發送請求的時候只用調用這個函數的名字即
可))
?????????? Tuxedo是三層架構的典型應用,它具體有以下特點:
?????????? (1)tuxedo server 為tuxedo clients 注冊和提供(named)services ,這些servers支持訪
問DBMS,或者其他集中的資源
?????????? (2)tuxedo client如果要調用某個服務,直接指定該服務(service)的名字就行了。客戶端的服務請求(client service requests)被路由(rout)和被分發(distributed)到一個已經配置過的一群進程(server)里(a configured number of servers),這些進程提供這些service在tuxedo這一層。
?????????? (3)tuxedo servers 可以被分配到多個應用服務器上,它是被集中式配置和管理的。
????? 4、Tuxedo 的擴充功能 (the extended tuxedo features)
?????????? tuxedo是當今最好的執行C、C++、COBOL事務程序應用的監控器。它不支持后臺 Java 的開發。
客戶端支持Java的開發。
????????? tuxedo是:
?????????
???????????? * middleware (between client & servers)
???????????? * Transaction Processing (TP) Monitor (事務處理監聽器)
???????????? * Infrastructure for distributed applications -multi-tier,client-server environment
that is centrally manageed(分布式應用的集中管理的多層C/S架構的基本組成部分)
?
???????????? * The name Tuxedo comes from it's origins? : Transactions for Unix (TUX)
+distributed client -server communications (Extended for Distributed Operation)????
本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/IT_newbalance/archive/2009/05/13/4179601.aspx
總結
以上是生活随笔為你收集整理的Tuxedo 中间件学习心得 一的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 对比rank, dense_rank,
- 下一篇: 青海西宁市大通县非洲猪瘟疫区解除封锁