帳務處理系統(tǒng)的軟件體系結(jié)構_第1頁
帳務處理系統(tǒng)的軟件體系結(jié)構_第2頁
帳務處理系統(tǒng)的軟件體系結(jié)構_第3頁
帳務處理系統(tǒng)的軟件體系結(jié)構_第4頁
帳務處理系統(tǒng)的軟件體系結(jié)構_第5頁
已閱讀5頁,還剩55頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、目錄 TOC o 1-3 h z HYPERLINK l _Toc491485903 第1章帳務處理系統(tǒng)的軟件體系結(jié)構 PAGEREF _Toc491485903 h 2 HYPERLINK l _Toc491485904 1.1帳務處理系統(tǒng)的設計思想 PAGEREF _Toc491485904 h 2 HYPERLINK l _Toc491485905 1.2帳務處理系統(tǒng)的軟件體系結(jié)構 PAGEREF _Toc491485905 h 2 HYPERLINK l _Toc491485906 1.3應用的關鍵技術 PAGEREF _Toc491485906 h 4 HYPERLINK l _To

2、c491485907 1.3.1數(shù)據(jù)庫設計技術 PAGEREF _Toc491485907 h 4 HYPERLINK l _Toc491485908 1.3.2WEB技術 PAGEREF _Toc491485908 h 5 HYPERLINK l _Toc491485909 1.3.3中間件技術 PAGEREF _Toc491485909 h 14 HYPERLINK l _Toc491485910 1.3.4分布對象技術 PAGEREF _Toc491485910 h 22 HYPERLINK l _Toc491485911 1.3.5數(shù)據(jù)分析技術 PAGEREF _Toc49148591

3、1 h 30帳務處理系統(tǒng)的軟件體系結(jié)構帳務處理系統(tǒng)的設計思想BOSS系統(tǒng)的設計是嚴格按照下列要求進行的:滿足需求:遵照廣東移動通信有限責任公司的技術規(guī)范,適應廣東移動通信有限責任公司進展的需要以及滿足寬敞移動用戶的實際需求進行設計。系統(tǒng)不僅涵蓋現(xiàn)有系統(tǒng)的所有功能,而且增加大量易用的新功能。提供方便地增加新業(yè)務的手段和可能;先進高效:有針對性的采納多種先進的技術和設備,系統(tǒng)響應迅速,能應付相當時期內(nèi)可能激增的用戶和迅速增長的業(yè)務需求,系統(tǒng)整體性能優(yōu)異;可靠安全:使用雙機熱備份,磁盤陣列的RAID技術等多項系統(tǒng)備份和恢復手段以求達到系統(tǒng)要緊部分無單點故障可能;嚴格的口令治理,完善的多用戶系統(tǒng)平臺,

4、和完備的加密手段提高系統(tǒng)的安全性;易于擴展:提供良好的接口,方便和HLR、客服中心、省中心、合作公司、金融網(wǎng)、Internet及視聆通等系統(tǒng)互聯(lián);考慮對現(xiàn)有投資的愛護,能夠最大限度的利用現(xiàn)有資源;治理方便:通過性能監(jiān)控、故障發(fā)覺和告警、遠程維護、日志記錄等多種手段和友好的用戶界面最大程度地強化系統(tǒng)治理和簡化用戶操作。帳務處理系統(tǒng)的軟件體系結(jié)構系統(tǒng)軟件的邏輯結(jié)構應具備良好的層次結(jié)構,不同的層次結(jié)構間的耦合關系盡可能地小。軟件邏輯結(jié)構設計上采納數(shù)據(jù)驅(qū)動的、面向?qū)ο蟮臄?shù)據(jù)處理方式,它可分為以下四個層次。1、應用表示:用戶接口部分,可采納MS NT4.0/5.0,Window95/98,用戶使用者通過

5、一系列的操作來完成自己的需求定義。2、應用服務:采納中間件等技術,該邏輯層將用戶通過應用表示定義的需求表示成一系列的應用服務請求。3、應用邏輯:采納C+/C語言和RDBMS和相關應用API等技術工具。該邏輯層響應應用服務請求,完成邏輯上的組合,并通過數(shù)據(jù)操作完成相關數(shù)據(jù)的更新。4、數(shù)據(jù)操作:由ORACLE、INFORMIX、SYBASE、DB2等數(shù)據(jù)庫服務器完成,完成數(shù)據(jù)物理上的更新操作。應用操作和應用服務分離:用戶的需求同系統(tǒng)提供的服務在系統(tǒng)的邏輯結(jié)構上相對分離,保證系統(tǒng)的應用操作部分相對獨立,適應用戶需求的不斷變化。應用服務和應用邏輯分離:應用提供的服務和系統(tǒng)對這些服務的實現(xiàn)在系統(tǒng)的邏輯結(jié)

6、構上相對分離,保證系統(tǒng)的應用服務部分相對獨立,服務的實現(xiàn)方法上的改變不應阻礙提供給用戶的服務形式上發(fā)生變化。應用邏輯和數(shù)據(jù)操作分離:提供給用戶的服務的實現(xiàn)方法和數(shù)據(jù)的存取操縱部分相對分離,使系統(tǒng)的邏輯實現(xiàn)具有良好的跨平臺性。數(shù)據(jù)的接口邏輯上一致:采納相同的技術實現(xiàn)系統(tǒng)不同邏輯層的數(shù)據(jù)接口和系統(tǒng)同其它系統(tǒng)的數(shù)據(jù)接口,以利于系統(tǒng)的實現(xiàn)和維護。應用的關鍵技術依照業(yè)務的定義,在系統(tǒng)軟件的實現(xiàn)上采納不同的技術實現(xiàn)。其中要緊有N-tier技術、WEB技術、數(shù)據(jù)庫技術、面向?qū)ο笤O計技術、數(shù)據(jù)集市或數(shù)據(jù)倉庫技術。數(shù)據(jù)庫設計技術數(shù)據(jù)庫設計技術采納實體-關系模型描述系統(tǒng)的數(shù)據(jù)邏輯關系,采納關系模型數(shù)據(jù)庫來實現(xiàn)系統(tǒng)

7、的數(shù)據(jù)邏輯關系。利用Powerdesigner工具描述帳務系統(tǒng)中的數(shù)據(jù)邏輯關系,形成數(shù)據(jù)邏輯模型(E-R關系)。在數(shù)據(jù)邏輯模型完成數(shù)據(jù)的組織定義和講明,Powerdesigner工具依照其生成詳細的設計文檔。在數(shù)據(jù)邏輯模型的基礎上Powerdesigner工具依照其自動生成物理數(shù)據(jù)模型,形成關系數(shù)據(jù)庫的數(shù)據(jù)庫定義語言,即形成關系數(shù)據(jù)庫的數(shù)據(jù)庫、表、視圖、存儲過程、主外鍵關系等的定義及相關講明。在此基礎上進行數(shù)據(jù)庫的補充設計、完成數(shù)據(jù)庫的最終設計,即完成系統(tǒng)的數(shù)據(jù)庫的物理設計。WEB技術WebShpere 應用服務器簡介WebSphere應用服務器基于一個Java Servlet引擎,將通常的W

8、eb服務器(象Apache服務器,Microsoft IIS,Netscape 企業(yè)服務器和 Lotus Domino Go WebServer)增強為基于Java的Web應用服務器。作為IBM e-business應用架構的核心,WebSphere應用服務器提供了無限的擴展性,同意用戶利用IBM或其它廠商提供的Java技術擴展其運行環(huán)境。WebSphere功能描述WebSphere應用服務器滿足維護一個Web站點的任何需求:簡單安裝,圖形用戶界面(方便Servlet治理),基于Web的遠程治理和安全特性。它支持標準的Java Servlet(包括Java Server Pages Scrip

9、ts),并增強其服務,例如會話狀態(tài)(Session State),用戶環(huán)境信息(User Profile),通過連接治理器(連接緩沖區(qū))實現(xiàn)高性能的數(shù)據(jù)庫訪問。利用IBM Connector系列,實現(xiàn)與后臺系統(tǒng)(CICS,IMS,MQSeries)的連接。WebSphere應用服務器支持Enterprise Java Beans(EJB)編程模型。聯(lián)合Enterprise Java Server(EJS)和一個Java Object Request Broker(ORB),能夠通過IIOP訪問分布的對象,利用那個標準的、廣泛的編程模型,可在您的Web應用中實現(xiàn)對各種商業(yè)對象的訪問和運行服務。C

10、ORBA的支持包括代碼生成器,同意開發(fā)者從編寫IDL或Java Interface開始,CORBA命名服務的Java實現(xiàn),對象創(chuàng)建,和Factory services,以及在Web服務器上將對象服務器作為一個Servlet運行。WebSphere 應用服務器支持的應用模型WebSphere 應用服務器將Web 應用程序劃分為三種類型的部件:視圖類,即HTML 網(wǎng)頁,下載到掃瞄器,處理用戶輸入和輸出顯示;操縱器類,即Java Servlet,負責接收客戶端請求,提交服務,和將結(jié)果生成HTML網(wǎng)頁;模式類,包括會話跟蹤,用戶環(huán)境信息和其它連接數(shù)據(jù)庫和 IBM Connectors 的服務,提供后臺

11、信息和執(zhí)行后臺應用程序功能。 WebSphere 應用服務器依照業(yè)界標準的Java 服務器頁面 (JSP) 提供了服務器腳本。依照不同的環(huán)境變量、JavaBean 屬性文件條目,以及包含這些條目的簡單表達式,JSP頁面能夠自行生成和使用包含簡單“ 填空 ”功能的動態(tài)頁面。它們還同意嵌入 Java 程序,能夠方便地執(zhí)行 Server Side Includes (可重復使用的 HTTP Servlet,提供了部分,但不是全部的頁面顯示功能),WebSphere 包含了一個處理器,能夠?qū)⒛_本頁面動態(tài)編譯成Java Servlet,然后由Web應用程序服務器執(zhí)行。Java Servlet 和JSP的

12、結(jié)合,可將網(wǎng)頁內(nèi)容生成 (業(yè)務邏輯) 和內(nèi)容顯示(HTML 編 排)分離開,使得被調(diào)用的Servlet將處理信息放到一個Bean中,然后交給JSP,JSP 接收到信息Bean,生成客戶端的HTML。這一應用模型的好處是幸免了CGI和ASP的缺點,并具有以下特點:關于客戶端,大大簡單了應用實施,掃瞄器不需要支持 Java,所有的Java,或者講業(yè)務邏輯在服務器端執(zhí)行,客戶機下載的全部是HTML,無需下載Java 類文件,節(jié)約了網(wǎng)絡消耗并提高了執(zhí)行速度。關于服務器端,提供中間的應用服務,并可依照性能和業(yè)務量的要求,操縱運行機器的數(shù)量和大小。由于全部基于Java 服務器的技術,使得系統(tǒng)的移植性,可擴

13、展性不受任何限制。會話跟蹤,用戶環(huán)境信息提供了多用戶支持。Servlet 的多線程服務大大降低對服務器資源的消耗,使得應用服務器能夠長時刻連續(xù)服務。更安全,不用在防火墻外訪問后臺系統(tǒng)。為 Servlet 提供的各種服務:會話狀態(tài),維護用戶環(huán)境信息在WebSphere 應用服務器中還提供了專門的軟件包,使得會話跟蹤,維護用戶信息,生成動態(tài)的個人網(wǎng)頁和站點實時監(jiān)測 更加容易。其中包括:會話跟蹤: WebSphere 應用服務器提供了完善的會話狀態(tài)和跟蹤模型框架,處理來自同一掃瞄器上同一用戶的一系列請求,并維護個人信息合會話信息,包括記錄參考頁面,引導訪問者進入Web 站點,同時跟蹤訪問者的位置,并

14、通過會話聯(lián)系用戶標識。IBM WebSphere 應用服務器的會話狀態(tài) (session state ) 為高速的訪問和更新而設計。狀態(tài)存放在內(nèi)存中,但數(shù)據(jù)可在會話結(jié)束時被保存到目錄中,數(shù)據(jù)庫中或 connector 中 。而且,同意會話跟蹤者同意多個的應用服務器分享一個公共會話緩沖區(qū) (會話簇)。每個應用服務器被配置成會話客戶機或會話服務器,實現(xiàn)會話建立,共享維護,治理等相關功能。用戶環(huán)境信息(User Profile) ,: 提供維護訪問者詳細信息,如愛好和個人數(shù)據(jù)等的方法,可在Web應用程序內(nèi)使用并將它們長期保留,例如數(shù)據(jù)庫中,Cookie中,或其它。站點行為的動態(tài)實時監(jiān)測,提供了站點行

15、為監(jiān)測器,一個Applet,提供站點活動的動態(tài)的觀看,例如活動的會話,資源的使用,運行的程序等并可操縱其活動。軟件包中包含專門的工具,提供給Web 站點治理員動態(tài)的登記公告牌,以及使訪問者交換信息。數(shù)據(jù)庫連接治理器WebSphere 應用服務器有一個數(shù)據(jù)庫連接治理器。它的使用是為解決Web 應用程序訪問后臺數(shù)據(jù)庫服務器,會引起較高的,難以預測的系統(tǒng)開銷。因為假如沒有連接治理器,每個用戶會直接與數(shù)據(jù)服務器建立連接和斷開連接,頻繁地耗費服務器資源,往往會嚴峻阻礙Web 應用中實際交互的進行,甚至造成癱瘓。連接治理器能夠操縱和減少Web應用程序使用的資源。通過建立一個可供用戶程序使用的連接緩沖區(qū),連

16、接治理器將連接開銷分散到多個用戶請求上去。每個用戶請求只引起一個連接/斷開代價中一部分的系統(tǒng)消耗。只使用初始資源建立緩沖區(qū)的連接后,附加的連接/斷開消耗就不大了,因為只是重復使用以有的連接而已。通過這種方法,能夠做到多個應用程序共享連接緩沖。連接治理器能夠同各種數(shù)據(jù)源相連接,如關系型的DB2,Oracle,Informix,Sybase等和其它類型的數(shù)據(jù)產(chǎn)品,通過連接緩沖區(qū),支持多種多個數(shù)據(jù)庫服務器的連接能力。當用戶通過Web訪問應用時,例如Servlet,Servlet 從緩沖區(qū)使用一個以有的連接,而不引起數(shù)據(jù)服務器連接消耗,當請求結(jié)束,Servlet 把連接歸還給連接緩沖區(qū),以供其它程序使

17、用,也不引起數(shù)據(jù)服務器斷開消耗。連接治理器還能操縱到數(shù)據(jù)服務器產(chǎn)品的并發(fā)連接數(shù)。訪問數(shù)據(jù)庫的JavaBeans,WebSphere 應用服務器提供了訪問數(shù)據(jù)庫的JavaBeans,能夠代替Java.Sql 包,讓程序直接使用,從而使數(shù)據(jù)庫訪問的編程更簡單,而且充分利用控件的優(yōu)點,幸免了數(shù)據(jù)庫訪問的各種復雜問題。這些數(shù)據(jù)庫訪問JavaBeans具有以下特點:查詢結(jié)果的高速緩存:SQL查詢結(jié)果能夠檢索存放在高速緩存中的所有內(nèi)溶,應用可在高速緩存中向前/后移動,或直接跳到任何結(jié)果行。而假如直接使用Java.Sql 包,只能檢索行一次,并只能向前移動。關于大的結(jié)果集,數(shù)據(jù)庫訪問JavaBeans提供檢

18、索和治理整個集合或其子集。通過結(jié)果高速緩存更新:程序能夠使用標準的Java語句(優(yōu)于SQL 語句) 來修改,增加或刪除結(jié)果緩存中的行,更新的結(jié)果緩存能夠立即反映到對應的關系型的數(shù)據(jù)上。查詢參數(shù)支持:用戶能夠鍵入查詢語句或條件到掃瞄器的HTML表單中,數(shù)據(jù)庫訪問JavaBeans 在運行時能夠得到這些信息,替換成其查詢參數(shù)值。元數(shù)據(jù)支持:提供SQL 數(shù)據(jù)類型和Java 數(shù)據(jù)類型映射和相互轉(zhuǎn)換功能。IBM Connector WebSphere 應用服務器使用 IBM Connector 系 列,實現(xiàn)與事務處理系統(tǒng)和消息系統(tǒng)的連接。它提供了一 組宜于使用的 Java 類,訪問現(xiàn)有的后臺系統(tǒng)。每個

19、Connector 有一小組Java Beans 組成,它們是NCF Connector Interfaces (NCI) 的實現(xiàn),這些接口關于所有 Connector 家族是一致的。每個Connector 也提供一些 Servlet beans,為您提供一 些通用的,差不多的功能,能夠直接使用或客戶化。Enterprise Java Beans 支持當使用IBM WebSphere 應用服務器標準板提供 Enterprise Java Beans 支持后,您能夠考慮進一步的開發(fā)方式,由于EJB 支持交易性處理,并可依照實施要(與編程無關)同意遠程或本地調(diào)用。如此利用EJB 提供的標準編程模型

20、讓Servlet 能夠訪問任何類型的服務,不論這些服務在那兒,有多么復雜。性能和擴展性功能 IBM WebSphere 應用服務器可與IBM WebSphere Performance Pack中的eNetwork Dispatcher 共同使用。eNetwork Dispatcher 安裝于一組相同的 web 服務器(簇 ),包括運行著 WebSphere 的應用服務器之前 ,它可將請求交給負載最輕的 web 服務器。這一功能同意站點的任意擴展,提高命中率和響應速度,滿足更多的動態(tài)處理需求,只需再增加一個服務器。由于Servlet 是無狀態(tài)的,可由簇中的任何 web 應用服務器治理,會話狀態(tài)

21、和User Profile 可讓簇中的每一個服務器處理, 從而共享對話和用戶環(huán)境信息。應用服務器的治理工具WebSphere應用服務器提供了基于掃瞄器的圖形用戶界面治理程序(Applet),能夠方便的進行Web應用(Servlet)的定制,監(jiān)控及安全性等治理任務。具體的任務包括:定制安裝參數(shù): 在讓WebSphere應用服務器治理Servlets之前,需要定制差不多的啟動參數(shù),用于Servlet配置和治理器本身特性配置。有關Servlet的定制包括差不多的Java文件路徑,Java編譯器路徑,是否使用User Profile和User Profile參數(shù),是否使用Session Trackin

22、g和Session Tracking的參數(shù),Log文件類型,大小,位置信息,虛擬主機名稱和文檔根目錄數(shù)據(jù)庫連接池信息。監(jiān)控Servlet行為: 通過查看各種log輸出,裝載的Servlet的狀態(tài)和統(tǒng)計,以及實時地資源使用情況,活動的對話等。創(chuàng)建和維護安全治理 : WebShpere為安全的Web應用提供了各種技術。在WebShpere中安全因素包括域及用戶,組,資源和訪問操縱列表等,在治理工具中,通過定義用戶,組,資源和訪問操縱列表,對每個用戶,組和資源分配訪問權限,您能夠操縱各種服務中何種資源被使用及被誰使用。其中,WebSphereWeb服務器與應用服務器提供的資源包括Web網(wǎng)頁,其它類型

23、的文件和目錄,Web應用程序即Java Servlet,Java ServerPage,Servlet可使用的網(wǎng)絡連接(socks),Servlet訪問的企業(yè)資源和應用。當用戶請求服務器端的服務時,WebShpere會提示用戶要訪問內(nèi)容具有安全限制,通過掃瞄器提示用戶輸入標識和密碼,用戶客戶端登錄后,其輸入的標識和密碼會傳給Web應用服務器,通過認證用戶標識。,查看其所在的訪問操縱列表,決定其是否具有對請求的資源的訪問權限,從而達到Web應用的安全性要求。另外,在WebSphere也能夠使用SSL,加強客戶端的掃瞄器到Web服務器的通訊信道的安全性,包括服務器認證,客戶端認證,對信息加密等安全

24、措施。WebSphere支持SSL3.0,有關SSL,請參考相關資料。治理Servlets : 包括Servlet的裝載和卸載,包括遠程裝載/卸載,路徑,初始參數(shù),創(chuàng)建不名和過濾器(MIME類型)等。使電子商務成為現(xiàn)實在WebSphere產(chǎn)品中添加先進的事務性功能,就能夠進一步支持當今網(wǎng)絡化企業(yè)的需求。今后的版本將緊密集成其它產(chǎn)品,例如Net.Commerce(用于構建和治理Web商務)、TXSeries(Web版本的事務處理系統(tǒng)),以及Component Broker。IBM提供了廣泛的應用服務器技術,包括Lotus Domino、DB2 Universal Database、WebShpe

25、re、CICS、IMS和MQSeries。所有這些服務器都能夠同WebSphere合作,成為集成了WebSphere軟件的互聯(lián)企業(yè)解決方案的一部分。WebSphereWeb服務器功能、事務處理、商務功能、通用編程和工具相結(jié)合,使之成為最綜合、最強壯的解決方案,為電子商務應用程序帶來價值。Websphere在帳務處理系統(tǒng)中應用數(shù)據(jù)庫訪問、CICS服務器訪問采納N-tier結(jié)構訪問,如此,一方面能夠充分應用服務器的數(shù)據(jù)庫連接緩沖池功能,降低對數(shù)據(jù)庫服務器的連接開銷,一方面也方便增強數(shù)據(jù)庫系統(tǒng)的安全性。示意圖如下:中間件技術交易中間件CICS技術介紹CICS(客戶信息操縱系統(tǒng))是IBM公司的事務處理

26、軟件,它的歷史差不多超過了26年,從批處理的作業(yè)方式向聯(lián)機事務處理方式的轉(zhuǎn)變,使人們認識到必須有專門的事務處理軟件來調(diào)度事務的運行,才能獲得令人中意的系統(tǒng)性能和事務可靠性。大型的聯(lián)機事務處理系統(tǒng)的開發(fā)比大多數(shù)人原來想象的要復雜得多,它絕不是把數(shù)據(jù)放在一臺主機的數(shù)據(jù)庫中,然后開發(fā)一些客戶端程序來訪問和修改這些數(shù)據(jù)這么簡單。CICS最大的貢獻確實是深入分析了聯(lián)機事務處理系統(tǒng)中與業(yè)務邏輯無關的,只與系統(tǒng)運行有關的具有共性的需求,把上述種種復雜的軟件功能歸納起來,以服務器的形式關心應用程序?qū)崿F(xiàn)這些功能,在整個系統(tǒng)的運行過程中充當應用治理的角色,類比于數(shù)據(jù)庫服務器治理系統(tǒng)中的所有數(shù)據(jù),事務服務器治理系統(tǒng)

27、中所有的應用,以及與應用相關的資源。服務器上的應用程序可直接訪問數(shù)據(jù)庫,但更多的是請求CICS的調(diào)度服務,在CICS的治理和協(xié)調(diào)下運行,并訪問數(shù)據(jù)庫,由于CICS集中治理與應用系統(tǒng)有關的所有資源包括數(shù)據(jù)庫,就能以最優(yōu)化的方式運行,保證達到最優(yōu)的整體性能。客戶端的應用程序在CICS客戶端軟件的支持下與CICS服務器通訊,并請求運行服務器上的應用程序,這種關系可類比于數(shù)據(jù)庫服務器中的存儲過程,能被客戶端的應用程序請求調(diào)用??蛻舳说膽贸绦虻墓ぷ饕话闶鞘占脩魯?shù)據(jù),發(fā)請求并接收服務器回答的結(jié)果,顯示在屏幕上。業(yè)務治理CICS服務器能提供的服務由定義在其中的業(yè)務程序決定。帳務系統(tǒng)與營銷系統(tǒng)作為相互獨立

28、的兩套業(yè)務系統(tǒng),既可分不定義在兩個CICS服務器上,亦可定義在同一個CICS服務器上。CICS服務器支持的事務處理系統(tǒng)中,每一筆業(yè)務或每一個處理都由服務器端的一個可重入模塊實現(xiàn),必須由系統(tǒng)治理員或開發(fā)人員在模塊編譯成功后,在CICS服務器中的程序定義(PD)加入相應的定義項,指定程序的外部名字。該名字供客戶端應用程序請求服務器端的服務使用。不同的業(yè)務程序由系統(tǒng)治理員指定不同的外部名字,假如引用程序名字錯誤會帶來不正確的結(jié)果。負載均衡CICS服務系統(tǒng)的負載均衡由CICS客戶端軟件中的負載均衡治理驅(qū)動器實現(xiàn),與后臺服務器的配置無關。CICS客戶端程序客戶機與一臺或多臺CICS服務器間的連接,監(jiān)控每

29、個服務器的響應時刻、已處理請求數(shù)等性能參數(shù),選擇最空閑的CICS服務器,動態(tài)將客戶請求發(fā)往該服務器。具體的負載均衡選擇算法由CICS客戶端通訊進程的外接出口程序?qū)崿F(xiàn),與最終客戶使用的應用程序無關,因此負載均衡算法改變時無需修改客戶端應用程序。在CICS客戶端,每個CICS服務器都由系統(tǒng)治理員指定一個名字,在該名字下記錄該CICS服務器所在機器的IP地址和同意客戶請求的端口號(默認端口號為1435,支持大量并發(fā)用戶的CICS服務器通常配置多個端口號同時同意客戶請求,這時每個端口號都在客戶端定義為一個CICS服務器,即使它們屬于同一個CICS服務器)??蛻舳硕x的多個CICS服務器加入一個服務組中

30、,客戶端應用程序發(fā)出ECI調(diào)用請求時CICS客戶端支持軟件就能夠在同一組CICS服務器中動態(tài)地選擇一個,選擇的算法能夠簡單的循環(huán)算法,亦能夠按比例或動態(tài)檢查算法。CICS的負載均衡設計給予CICS客戶端應用程序動態(tài)選擇服務器的功能,結(jié)構靈活簡單,可不能因為負責負載均衡的接入服務器發(fā)生故障而阻礙整個系統(tǒng)的運行。CICS服務器的設置與客戶端的設置相對獨立,CICS客戶端能夠選擇使用負載均衡,亦可選擇不采納負載均衡;還可選擇是在所有可用服務器間作負載均衡,依舊在部分可用服務器間作負載均衡;甚至能為每個程序選擇是否作負載均衡,負載均衡的范圍,負載均衡算法等。在CICS負載均衡結(jié)構的支持,系統(tǒng)治理員能夠

31、在承擔較大處理的系統(tǒng)中配置多臺CICS服務器,裝入完全相同的業(yè)務程序,均分系統(tǒng)負載。通信中間件MQSeries技術介紹MQSeries是一個通信中間件,專門負責在各種平臺間傳送數(shù)據(jù),能保證數(shù)據(jù)在不穩(wěn)定的數(shù)據(jù)線路上傳送時可不能丟失或重復,其簡潔的編程接口能大大簡化系統(tǒng)開發(fā)人員的工作量,提高開發(fā)質(zhì)量。MQSeries不但能在RS/6000的AIX上運行,還能在各種平臺如WindowsNT、各種UNIX操作系統(tǒng)以至各種專用系統(tǒng)上運行,使各平臺上的應用程序能順利地交換數(shù)據(jù)。隨著MQSeries在中國人民銀行的推廣使用,它正在成為中國金融界系統(tǒng)進行交易事務的事實標準。越來越多銀行、證券系統(tǒng)使用MQSer

32、ies互聯(lián)。MQSeries系統(tǒng)是一個消息排隊產(chǎn)品,是IBM用于通訊的中間件產(chǎn)品,它為分布式環(huán)境下進行程序到程序之間通信提供了靈活、快速同時易于使用的解決方法。MQSeries為應用程序提供一種跨越網(wǎng)絡通訊的專門機制,參與通訊的應用程序之間不需要建立私有的、專用的邏輯連接,它們只需要把數(shù)據(jù)組裝成消息,放入消息隊列中,接收方從消息隊列中取出消息,達到通信的目的。MQSeries中的M指的是消息(MESSAGE),Q指的是隊列(QUEUE),Series指的是該產(chǎn)品支持幾乎所有平臺,包括所有計算機工業(yè)界的主流平臺,運行在各種UNIX平臺和NT平臺上的應用程序都能用相同的API互相通訊。利用MQSe

33、ries傳送數(shù)據(jù)的系統(tǒng)在系統(tǒng)設計和應用開發(fā)上有以下優(yōu)點:1、斷點自動恢復MQSeries這一特性能保證在網(wǎng)路中斷并恢復之后,數(shù)據(jù)被可靠地從中斷點恢復傳送,而無需程序員考慮網(wǎng)絡特性。2、保證每條數(shù)據(jù)不丟失,不重復由于采納了先進的程序設計思想,MQSeries的消息放入穩(wěn)定的磁盤設備臨時存放,直至完整傳送為止。MQSeries是唯一可保證信息一次性傳輸?shù)闹薪檐浖?。在當前?shù)據(jù)傳輸線路條件普遍較差的現(xiàn)狀下,這一點對要求高度數(shù)據(jù)完整性的系統(tǒng)來講至關重要。3、多協(xié)議并存MQSeries提供給開發(fā)人員的編程接口與具體的網(wǎng)絡協(xié)議無關,網(wǎng)絡底層不同類型的傳輸協(xié)議對應用開發(fā)是透明的,基于不同種協(xié)議的應用程序間的通

34、訊在MQSeries上已成為現(xiàn)實。相比網(wǎng)關技術它有無與倫比的優(yōu)越性,能夠大大節(jié)約應用開發(fā)人員的開發(fā)工作量。4、異步并行處理MQSeries不僅支持傳統(tǒng)的同步的實時響應的程序間通訊,更支持異步的、并行的工作方式。當一個應用程序用MQPUT將一個信息傳送給其它應用程序,它不需等待另一個應用程序的回答,甚至不需關懷信息是否被對方接收,接著執(zhí)行MQPUT以后的指令。5、實時響應,高速傳輸MQSeries提供了保持鏈接的通訊方式,使每條消息的傳輸不需重新建立新的通訊鏈接,保證實時響應效率。MQSeries提供了大容量消息成組傳輸?shù)墓δ?,特不適合計費系統(tǒng)中話單數(shù)據(jù)和計費數(shù)據(jù)的成批傳送的應用。6、多種平臺共

35、存MQSeries在23種操作系統(tǒng)上提供統(tǒng)一的編程接口,僅需重新編譯就可完成不同平臺間程序的移植。7、提高系統(tǒng)開發(fā)效率MQSeries十分簡單易學,用戶僅需利用MQSeries的9個易用而又功能強大的函數(shù)調(diào)用,就能完成所有的通訊操作。MQSeries在各個平臺都提供相同的C語言應用編程接口。熟悉C語言環(huán)境的開發(fā)人員能以最快的速度,寫出各種復雜的應用程序,實現(xiàn)專門的功能,包括傳送計費和話單數(shù)據(jù)、滿足業(yè)務中實時查詢的要求等。MQSeries的簡單性使它可不能約束程序的應用范圍,如何處理來自程控交換機的話單數(shù)據(jù)、操縱業(yè)務流程等都與MQSeries本身無關,但都能在MQSeries的支持下實現(xiàn)。MQS

36、eries不僅能做到斷點自動恢復,還能夠?qū)崟r或批量地將大量的數(shù)據(jù)轉(zhuǎn)發(fā)到目的地.再觸發(fā)有關應用來處理這些信息.MQSeries可保證信息不丟失,不重傳。通過使用MQSeries來構成計費系統(tǒng)的通訊基礎,能有效地保證整個網(wǎng)絡的可靠性與信息傳遞的高速與實時性,使得應用程序的開發(fā)能夠?qū)W⒂跇I(yè)務的設計與實現(xiàn)上。8、MQSeries的安全性保證計費系統(tǒng)分布在全省各地,用公共數(shù)據(jù)網(wǎng)絡連接各級中心和各交換局,數(shù)據(jù)專門易受到攻擊和偵聽,有必要采納可靠的安全機制愛護機密數(shù)據(jù)的傳輸。MQSeries有強大的安全操縱手段,愛護數(shù)據(jù)在公共數(shù)據(jù)線路上傳輸時的安全性。最適于在分布式環(huán)境中使用的手段是附加在MCA上的安全出口

37、程序、消息出口程序和發(fā)送接收出口程序。MCA附加的安全出口程序是一些增強通道功能的功能模塊。如安全出口程序,建立通道時,通道兩端的MCA調(diào)用各自的安全出口程序,系統(tǒng)開發(fā)人員在安全出口程序加入密碼確認的功能,只有通訊雙方交換密鑰成功后通道才能建立。安全出口程序能返回安全密鑰,MCA通過通道發(fā)送消息時,調(diào)用消息出口程序,用密鑰加密消息,接收方MCA收到消息后也調(diào)用消息出口程序?qū)ο⒔饷堋QSeries開放的接口支持各種用戶開發(fā)的加密系統(tǒng),從而愛護在公共數(shù)據(jù)網(wǎng)絡上傳輸?shù)臄?shù)據(jù)。假如要更進一步地實現(xiàn)在互聯(lián)網(wǎng)上的更強大的安全操縱,MQSeries能夠利用工業(yè)標準的DCE(分布式計算環(huán)境)提供的認證和加密

38、服務。CICS技術在帳務處理系統(tǒng)中應用關于交易服務(銷賬類服務等),對效率、性能、訪問量、并發(fā)性等要求較高的部分,使用IBM CICS中間件服務器的多層結(jié)構實現(xiàn),示意圖如下:MQseries技術在帳務處理系統(tǒng)中應用應用示意圖如下:系統(tǒng)差不多功能通過金融系統(tǒng)托收銷帳提供與金融系統(tǒng)的數(shù)據(jù)接口,金融系統(tǒng)能取得已開辦金融系統(tǒng)托收業(yè)務的用戶的話費,在金融系統(tǒng)中進行對用戶金融帳戶進行扣款交費操作,返回結(jié)果給帳務治理系統(tǒng),帳務治理系統(tǒng)對用戶進行銷帳處理。移動帳務系統(tǒng)對通過金融系統(tǒng)托收銷帳提供兩種支持方式異步托收銷帳:所謂的異步是指金融系統(tǒng)對用戶金融帳戶進行扣款交費、帳務治理系統(tǒng)對用戶進行銷帳兩個事件能夠以非

39、實時的方式進行。具體的處理流程是金融系統(tǒng)發(fā)起一個文件傳送請求取得托收用戶文件,托收用戶文件中包含了金融系統(tǒng)進行扣款交費所必需的信息;金融系統(tǒng)依照托收用戶文件對每個用戶依次進行扣款交費處理,處理結(jié)果生成托收用戶扣款文件,并將一個相應的永久索引消息(它將觸發(fā)向帳務系統(tǒng)傳送托收用戶扣款文件操作)發(fā)送到帳務系統(tǒng)的隊列中;一旦索引消息通過MQ系統(tǒng)傳送成功,將在指定目錄下生成托收用戶扣款文件,并觸發(fā)帳務系統(tǒng)依照此文件進行銷帳操作。異步托收銷帳方式適合于處理批量用戶的情況,只同意在欠費停機日期之前進行;在欠費停機日期后,由于同意托收用戶有其它的交費方式,要求使用下邊的同步方式進行銷帳。同步托收銷帳:所謂的同

40、步是指金融系統(tǒng)對用戶金融帳戶進行扣款交費、帳務治理系統(tǒng)對用戶進行銷帳兩個事件需要以實時的方式進行。具體的處理流程是金融系統(tǒng)發(fā)起一個托收用戶費用查詢(消息類型為0011)到帳務系統(tǒng)的查詢隊列,請求取得指定托收用戶費用情況(在查詢失敗情況下不能進行托收扣款,只能再次嘗試查詢);金融系統(tǒng)依照查詢結(jié)果進行扣款交費處理,并將一個相應的托收銷帳請求(消息類型為0001,包含扣款信息)發(fā)送到帳務系統(tǒng)的銷帳隊列中(超過預設時刻仍沒收到相應的回應消息認為此次交易失敗);帳務系統(tǒng)收到托收銷帳請求后對該用戶進行銷帳操作,依照銷帳結(jié)果給金融系統(tǒng)發(fā)送回應消息(消息類型為8001)。金融系統(tǒng)收到回應消息,依照銷帳結(jié)果進行

41、處理。同步托收銷帳方式適合于非批量用戶的情況,同意在欠費停機日期之前進行,也同意在欠費停機日期之后進行。通過金融系統(tǒng)代收銷帳提供與金融系統(tǒng)的數(shù)據(jù)接口,金融系統(tǒng)能查詢?nèi)〉糜脩舻脑捹M,用戶進行現(xiàn)金交費,金融系統(tǒng)將交費結(jié)果返回給帳務治理系統(tǒng),帳務治理系統(tǒng)對用戶進行銷帳處理。移動帳務系統(tǒng)對通過金融系統(tǒng)代收銷帳只提供實時同步的處理方式,具體的處理流程是金融系統(tǒng)發(fā)起一個代收用戶費用查詢(消息類型為0012)到帳務系統(tǒng)的查詢隊列,請求取得指定托收用戶費用情況(在查詢失敗情況下不能進行代收交費,只能再次嘗試查詢);金融系統(tǒng)依照查詢結(jié)果進行現(xiàn)金交費處理,并將一個相應的代收銷帳請求(消息類型為0002,包含現(xiàn)金交

42、費信息)發(fā)送到帳務系統(tǒng)的銷帳隊列中(超過預設時刻仍沒收到相應的回應消息認為此次交易失敗);帳務系統(tǒng)收到托收銷帳請求后對該用戶進行銷帳操作,依照銷帳結(jié)果給金融系統(tǒng)發(fā)送回應消息(消息類型為8002)。金融系統(tǒng)收到回應消息,依照銷帳結(jié)果進行處理。通過金融系統(tǒng)辦理托收關系提供與金融系統(tǒng)的數(shù)據(jù)接口,金融系統(tǒng)能查詢得知指定用戶是否能辦理新的托收關系(欠費或舊的托收關系沒解除時不能辦理),金融系統(tǒng)接收用戶填寫資料進行相應的辦理手續(xù),將結(jié)果返回給帳務治理系統(tǒng),帳務治理系統(tǒng)保存更新用戶的新托收關系信息。移動帳務系統(tǒng)對通過金融系統(tǒng)辦理托收關系只提供實時同步的處理方式,具體的處理流程如下金融系統(tǒng)發(fā)起一個辦托用戶情況

43、查詢(消息類型為0013)到帳務系統(tǒng)的查詢隊列,請求取得指定用戶的情況(在查詢失敗情況下不能進行新托收關系的辦理,只能再次嘗試查詢);金融系統(tǒng)依照查詢結(jié)果決定能否給用戶辦理新的托收關系,能辦理則在進行相應手續(xù)后,將一個辦理托收關系請求(消息類型為0003,包含新托收關系信息)發(fā)送到帳務系統(tǒng)的交易隊列中(超過預設時刻仍沒收到相應的回應消息認為此次交易失?。粠障到y(tǒng)收到辦理托收關系請求后更新用戶的新托收關系信息,依照托收信息更新結(jié)果給金融系統(tǒng)發(fā)送回應消息(消息類型為8003)。金融系統(tǒng)收到回應消息,依照托收信息更新結(jié)果進行處理。通過金融系統(tǒng)返銷帳提供與金融系統(tǒng)的數(shù)據(jù)接口,金融系統(tǒng)在銷賬時保存交易

44、流水號,返銷帳時依照流水號來確定是否是該筆交易需要返銷帳。金融系統(tǒng)將交易流水號返回給帳務治理系統(tǒng),帳務治理系統(tǒng)對該筆交易進行返銷帳處理。移動帳務系統(tǒng)對通過金融系統(tǒng)返銷帳只提供實時同步的處理方式,具體的處理流程是金融系統(tǒng)依照銷賬結(jié)果查詢得到原交易流水號,然后將一個相應的返銷帳請求(消息類型為0004)發(fā)送到帳務系統(tǒng)的銷帳隊列中(超過預設時刻仍沒收到相應的回應消息認為此次交易失?。?;帳務系統(tǒng)收到返銷帳請求后對該用戶進行返銷帳操作,依照返銷帳結(jié)果給金融系統(tǒng)發(fā)送回應消息(消息類型為8004)。金融系統(tǒng)收到回應消息,依照返銷帳結(jié)果進行處理。銷帳帳目核對功能提供與金融系統(tǒng)的數(shù)據(jù)接口,查帳發(fā)起方能查詢得知被

45、查方在指定時刻段內(nèi)托收/代收交易的情況(成功、失敗的筆數(shù),成功交易的總金額),查帳發(fā)起方收到查詢結(jié)果后,將結(jié)果與己方中的日志記錄進行比較核對,依照比較核對的結(jié)果決定是否進行詳細交易清單查詢;進行詳細交易清單查詢時,查帳發(fā)起方同樣發(fā)送一個查詢,回應方通過索引消息返回查詢交易清單文件。帳目核對只提供實時同步的處理方式,具體的處理流程如下查帳發(fā)起系統(tǒng)發(fā)送一個辦托用戶情況查詢(消息類型為0014,查詢方式為00)到目標系統(tǒng)的查詢隊列,然后等待回應消息以取得指定時刻段內(nèi)發(fā)生交易的統(tǒng)計情況,假如超時,本次查詢失??;目標系統(tǒng)收到查詢消息后,按條件依照己方日志中內(nèi)容作出統(tǒng)計結(jié)果,將結(jié)果返回給查詢發(fā)起系統(tǒng)(消息

46、類型為8014);查帳發(fā)起系統(tǒng)將查詢結(jié)果與己方系統(tǒng)中日志內(nèi)容進行比較核對,假如核對結(jié)果正確,一般不需要再做進一步詳細清單查詢,否則進行下一步;查帳發(fā)起系統(tǒng)發(fā)送一個辦托用戶情況查詢(消息類型為0014,查詢方式為01)到目標系統(tǒng)的查詢隊列,請求取得指定時刻段內(nèi)發(fā)生交易的詳細情況,同時指定返回生成的交易清單文件路徑名,然后等待相應的索引消息,假如超時,認為本次查詢失敗;目標系統(tǒng)收到查詢消息后,按條件依照己方日志中內(nèi)容生成交易清單文件,并發(fā)送一個索引消息給查詢發(fā)起系統(tǒng),觸發(fā)交易清單文件傳送;查帳發(fā)起系統(tǒng)收到回應消息(一個索引消息)后,打開生成的交易清單文件,與己方交易日志中內(nèi)容進行核對。分布對象技術

47、CORBA技術介紹所謂CORBA(Common Object Request Broker Architecture),即公共對象請求中介者體系機構,實際上是一種規(guī)范,它定義了分布式對象如何通過網(wǎng)絡進行互操作,而且對象獨立于客戶機、服務器的操作系統(tǒng)及其編程語言,目標在于提供各對象在異質(zhì)系統(tǒng)的網(wǎng)絡上的互操作性。CORBA規(guī)范由國際組織OMG(Object Management Group)來制訂。OMG成立于1989年,是一家由700多家公司組成的開放的非盈利性的組織,其工作是制訂對象計算的開放標準,但本身不從事開發(fā),是一個商業(yè)中立的組織。人們成立OMG的目的,正是為了支持以對象為基礎的軟件的標

48、準化,通過這種標準化方法來使用對象去支持分布式計算,使不同廠商的對象能夠通過網(wǎng)絡和操作系統(tǒng)實現(xiàn)互相操作。ORB是CORBA實現(xiàn)這些目標的差不多機制。對CORBA對象的訪問和CORBA對象的互通信要以對象請求解析器(Object Request Broker)為中介,而客戶感受不到這種與服務器對象通信的中介機制的存在。簡單地講:ORB=IDL+IIOP??蛻舳藢ORBA對象的訪問,通過IDL提供的該對象的標準接口去調(diào)用,因此假如一個對象要向其他的對象請求某些情況,它必須明白目標對象的IDL接口。IDL是CORBA規(guī)范中用來定義對象標準接口的接口描述語言(Interface Definition

49、 Language),它不是一種編程語言,不能用它來指定它所定義的類或方法的具體實現(xiàn),只能用來定義接口。對應不同平臺的不同語言的IDL編譯器將IDL接口映射到目標語言,如Java 、C+、COBOL等。CORBA對象之間的互相操作通信,則是通過公共的通信協(xié)議IIOP(Internet Inter-Orb Protocol)來通信。1994年OMG提出了CORBA2.0規(guī)范,其中包含了一個IIOP協(xié)議,用于ORB之間的互操作。每一個CORBA規(guī)范的實現(xiàn)確實是一個ORB,目前大多數(shù)的ORB是用C+寫的,也有的ORB是用JAVA編寫的,如SUN公司的Joe,Iona公司的Orbixweb,Netsc

50、ape的VisiBroker for JAVA。 Orbix是由目前要緊的ORB廠商IONA用C+寫的CORBA規(guī)范的實現(xiàn)軟件。關于某個具體的ORB軟件而言,用該ORB產(chǎn)生的CORBA對象之間的通信能夠遵循該ORB軟件自身提供的通信協(xié)議來實現(xiàn)。然而,由于存在不同的ORB廠商,依照不同的ORB產(chǎn)生的CORBA對象之間要進行通信就必須遵守公共的通信協(xié)議,而不能是某一ORB廠商的特定協(xié)議。IIOP協(xié)議正是基于這一點定義的,它運行于TCP/IP之上,是一種強健的、可伸縮的、基于事務的協(xié)議,它不但實現(xiàn)了不同ORB之間的互操作,而且由于它與現(xiàn)在的HTTP協(xié)議兼容,又不需要專門的配置,因此專門快成為Inte

51、rnet和企業(yè)Intranet上分布式對象間互相通信的標準。如此,不論分布式CORBA對象分布在什么地點,通過IIOP協(xié)議能夠?qū)崿F(xiàn)這些對象之間的互操作,從而幸免了復雜的網(wǎng)絡通信編程。圖1描述了CORBA的互操作性,通過標準的IDL接口描述語言,通過遵循公共的通信協(xié)議,CORBA實現(xiàn)了硬件平臺不同,操作系統(tǒng)不同,編程語言不同的情況下的對象之間互操作。HP-UX S/talkMVScobolSolarisHP-UX S/talkMVScobolSolarisC+AlphaAdaaC+IRIXC+AIXC+IRIXC+AIXJavaJavaOSVc+NT圖1 CORBA的互操作性CORBA是一種獨立

52、于語言的技術,因此用支持CORBA的語言(Java、C、C+、Ada、Smalltalk、COBOL,等)寫的任何一個客戶端都能以一種獨立于平臺和語言的方式訪問服務器的對象,CORBA對象之間也能夠?qū)崿F(xiàn)互相通信。CORBA的優(yōu)點在于:開發(fā)人員能簡單地申請并接收遠端的對象而無須擔心包含在這些對象中的實現(xiàn)細節(jié)。同樣地,服務器對象開發(fā)人員(用C+或其他語言開發(fā))也不必關懷那種語言要訪問他將建立的對象。也確實是講CORBA實現(xiàn)了對象實現(xiàn)的透明性和分布的透明性。如圖2所示:圖2從另一個角度來看,CORBA是軟件總線結(jié)構的實現(xiàn)。所謂軟件總線的功能確實是起到類似于計算機系統(tǒng)硬件總線的作用,只要將應用模塊按總

53、線規(guī)范作成軟插件,插入總線即可實現(xiàn)集成運行。如此,ORB能夠看成按照CORBA規(guī)范實現(xiàn)軟件總線的核心系統(tǒng)。IDL語言是CORBA定義的,用來描述軟件總線上的插銷。IDL提供了成員系統(tǒng)的封裝和成員系統(tǒng)之間的隔離,任何成員系統(tǒng)作為一個對象,通過IDL對其接口參數(shù)進行定義講明,就可接到ORB上,為其他系統(tǒng)提供服務或向其他系統(tǒng)提出請求,達到即插即用的效果。換句話講,CORBA里的每一個組件差不多上一個帶有面向?qū)ο蟮腎DL接口的對象,總線上的對象都能被任何其他對象所使用。軟件總線具有支持對象的實現(xiàn)透明性和分布透明性等特點。因為在CORBA的分布式體系結(jié)構下,分布式的CORBA對象之間互相通信時是無須關懷

54、對象的具體實現(xiàn)和對象的具體位置的,分布式的異構系統(tǒng)可看成相互作用的對象的集合。VISIBROKER技術介紹遵循CORBA標準的中間件產(chǎn)品目前要緊有IONA公司的Orbix及Inprise公司的VisiBroker,我國也正在加強對CORBA中間件產(chǎn)品的研制開發(fā)工作,目前尚處于試驗時期。VisiBroker作為全球分發(fā)量最多的CORBA產(chǎn)品,獲得了業(yè)界的廣泛認可。例如,Netscape公司的掃瞄器產(chǎn)品中就內(nèi)嵌了VisiBroker的ORB技術;Oracle公司的Oracle 8i 及 Oracle Application Server也決定使用VisiBroker作為對CORBA的支持。Inpr

55、ise VisiBroker為構建、分發(fā)、治理分布式CORBA對象提供了完整的ORB環(huán)境,其提供的多種功能套件有效實現(xiàn)了CORBA標準的核心服務,利用CORBA IIOP的原生實現(xiàn),VisiBroker營造了一個在Internet、Intranet的分布式計算環(huán)境。圖1顯示了VisiBroker基于CORBA的應用體系架構。下面我們就通過分析VisiBroker的功能,感受一下CORBA技術的強大優(yōu)勢。圖 SEQ 圖 * ARABIC 1 基于CORBA的VisiBroker應用體系架構VisiBroker功能分析Inprise VisiBroker提供了一整套標準CORBA的開發(fā)工具和服務。

56、下面將一一作以分析。 VisiBroker for Java /C+ VisiBroker for Jave/C+完整實現(xiàn)了CORBA 的ORB(Object Request Broker)規(guī)范。其開發(fā)環(huán)境包含了若干編程和治理的工具,用于開發(fā)、治理、分發(fā)能運行于多種異構平臺的Java或C+應用程序。VisiBroker for C+遵循OMG IDLto C+ Mapping,VisiBroker for Java遵循OMG IDL to Java Mapping。Smart Agent是VisiBroker提供的分布式、高效動態(tài)的定位對象的機制,具有負載平衡、容錯的功能。當CORBA服務器啟

57、動之后,會向網(wǎng)絡中的Smart Agent注冊。當客戶端應用程序啟動并要求使用一個CORBA服務器的功能對象時,Smart Agent會搜索差不多向它注冊的CORBA對象,假如找到,則將其回傳給客戶端程序。之后,客戶端程序便能夠和服務端對象進行連接通信了。除此之外,Smart Agent還提供了CORBA對象負載平衡以及容錯的能力,通過循環(huán)負載平衡算法,Smart Agents能夠?qū)⒖蛻舳苏埱缶獾胤峙浣o具有相同功能的CORBA對象實例,以確保單個對象實例不至于過載。Smart Agent還能夠自動察覺CORBA服務器是否出現(xiàn)問題,假如是的話,會自動搜尋其他提供相同服務的CORBA服務器,并提

58、供給客戶端程序(如圖1所示)。當網(wǎng)絡中啟動了多個Smart Agent的話,Smart Agent并可不能將其維護的對象目錄復制給其他Smart Agent,因為這會增加網(wǎng)絡的負荷。而一旦某一個Smart Agent發(fā)生故障而停止執(zhí)行,那么向其注冊過的CORBA服務器會自動再向其他Smart Agent注冊。以上功能的實現(xiàn)對用戶來講差不多上透明的,因此也極大簡化了CORBA應用程序的撰寫工作。此外,當客戶端應用程序需要連接使用CORBA對象時,會發(fā)出一個UDP通訊協(xié)議的廣播,假如在網(wǎng)絡中有多個Smart Agent,那么客戶端應用程序會連接最先回復的Smart Agent,然后使用向那個Sma

59、rt Agent注冊的CORBA服務器。VisiBroker的這種規(guī)則保證了客戶端應用程序使用的Smart Agent是目前負載最輕、或是距離它最近、或是網(wǎng)絡速度最快的Smart Agent。圖 SEQ 圖 * ARABIC 2 VisiBroker Smart Agent的容錯功能作為對Smart Agent功能的有力配合,VisiBroker OAD(Object Activation Daemon)能夠動態(tài)啟動對象實例。也確實是講,CORBA對象能夠向OAD注冊,由OAD維護對象的狀態(tài)。當客戶端程序啟動后向Smart Agent請求使用某一服務端對象時,假如此服務端對象還沒有啟動,那么S

60、mart Agent便會要求OAD啟動此對象。當OAD收到Smart Agent的要求之后,就會在其維護的對象實現(xiàn)庫(Implementation Repository)中查找向其注冊過的CORBA對象,假如找到就會自動啟動實現(xiàn)此對象的CORBA服務器,并將對象信息回傳給Smart Agent,再由Smart Agent回傳給客戶端程序??梢奜AD進一步增強了CORBA系統(tǒng)的運行效能。VisiBroker還提供了IREP(Interface Repository),作為對CORBA DII(Dynamic Interface Invocation)的支持。IREP負責維護每一個向它注冊的COR

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論