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