网站首页
教育杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
医学杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
经济杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
金融杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
管理杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
科技杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
工业杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
SCI杂志
中科院1区 中科院2区 中科院3区 中科院4区
全部期刊
公務(wù)員期刊網(wǎng) 論文中心 正文

中間件在計費(fèi)系統(tǒng)中的運(yùn)用

前言:想要寫出一篇引人入勝的文章?我們特意為您整理了中間件在計費(fèi)系統(tǒng)中的運(yùn)用范文,希望能給你帶來靈感和參考,敬請閱讀。

中間件在計費(fèi)系統(tǒng)中的運(yùn)用

本文作者:王秀敏、袁曉紅、趙麗娜 單位:渤海大學(xué)信息科學(xué)與工程學(xué)院、首都師范大學(xué)信息工程學(xué)院

0引言

中間件[1]是設(shè)計用來在分布式系統(tǒng)中管理復(fù)雜性和異構(gòu)性的軟件技術(shù),介于操作系統(tǒng)(OS,OperatingSystem)和應(yīng)用程序之間,提供獨(dú)立于OS和硬件的公共應(yīng)用程序接口(API),比OS提供的如sockets的API高級,允許運(yùn)行于分布式系統(tǒng)中一個或多個機(jī)器上的若干進(jìn)程通過網(wǎng)絡(luò)互相作用,通過數(shù)據(jù)管道連接分布式應(yīng)用的各個部分并在它們之間傳送數(shù)據(jù),不僅解決了異構(gòu)系統(tǒng)平臺間的通訊和資源共享問題,還緩解了單調(diào)乏味和易于出錯的編程工作,顯著減輕了應(yīng)用程序員的負(fù)擔(dān),見圖1。

從20世紀(jì)90年代到現(xiàn)在,中間件技術(shù)發(fā)展日趨成熟,最初只是在支持客戶/服務(wù)器(Client/Server)兩層(Two-Tier)體系結(jié)構(gòu)方面提供互用性,后來是多層體系結(jié)構(gòu)(Multi-Tier),被廣泛宣傳的是OSF(theOpenSoftwareFoundation)的DCE(DistributedComputingEnvironment),OMG(ObjectManagementGroup)的CORBA(CommonObjectRequestBrokerArchitecture),和微軟的COM/DCOM/COM+?,F(xiàn)在中間件已經(jīng)以服務(wù)器平臺的面目出現(xiàn),如BEA的Tuxedo[2,3],IBM的CICS(CustomerInformationControlSystem)TransactionServer等。

1中間件種類和優(yōu)點(diǎn)

中間件,掩藏了分布式系統(tǒng)[4~6]的程序員所必須處理的異構(gòu)性,完全掩藏了硬件和網(wǎng)絡(luò)的異構(gòu)性,大部分中間件還掩藏了OS或編程語言或二者全部的異構(gòu)性,有些中間件,如CORBA,都不必關(guān)心是誰實(shí)現(xiàn)和提供的,連同種中間件標(biāo)準(zhǔn)的不同供應(yīng)商實(shí)現(xiàn)的不同都掩藏了。這些都使得復(fù)雜并且困難的分布式系統(tǒng)的異構(gòu)性完全消失,對程序員透明,最終通過使用中間件,開發(fā)人員及用戶等都不必再關(guān)心諸如位置、并發(fā)性復(fù)制、故障和機(jī)動性等。

1.1中間件種類

已經(jīng)開發(fā)出來的中間件具有如下幾類:

(1)分布式表(DT,DistributedTuples)應(yīng)用最廣泛的是分布式關(guān)系數(shù)據(jù)庫,其SQL允許程序員操縱這些表的集合。分布式關(guān)系數(shù)據(jù)庫還提供了多重事務(wù)處理。事務(wù)進(jìn)程監(jiān)視器(TPM,TransactionProcessingMonitors),為開發(fā)和運(yùn)用分布式應(yīng)用提供工具和環(huán)境。

(2)面向消息的中間件(MOM,Message-OrientedMiddleware),通過消息隊列提供程序間數(shù)據(jù)交換,從此可于網(wǎng)絡(luò)上建立分布式的應(yīng)用程序。如OS的Mailbox。

(3)遠(yuǎn)程過程調(diào)用(RPC,RemoteProcedureCall),使網(wǎng)絡(luò)上的應(yīng)用成為分布式的。不過,RPC通常是同步的,只有使用多線程才可以實(shí)現(xiàn)并行機(jī)制,而且,其處理異常的能力有限。

(4)分布式目標(biāo)中間件(DO,DistributedObject/ORB,ObjectRequestBrokers/SOA,service-orientedarchitecture/SRB,ServiceRequestBrokers),使得異構(gòu)網(wǎng)絡(luò)上包含應(yīng)用的目標(biāo)成為分布式的和共享的。如CORBA(CommonObjectRequestBrokerArchitecture),由OLE(ObjectLinkingandEmbedding)和COM(ComponentObjectModel)發(fā)展而來的DCOM/COM+,基于XML和HTTP(HyperTextTransferProtocols)的SOAP(SimpleObjectAccessProtocol),JAVA的RMI(RemoteMethodInvocation)等。

各種類別和資源管理的關(guān)系,見表1。

中間件大體可分為幾個范疇(1)面向數(shù)據(jù)的,如上DT;(2)面向消息的,如上MOM;(3)面向請求的,如TPM,RPC,DO/ORB;(4)面向服務(wù)的,如上SOA。但是,它們之間的界限并非很明顯,有的甚至互相交叉。今天,我們正在面臨諸如分布式軟件,應(yīng)用集成,多樣性平臺,多樣化協(xié)議,多樣化設(shè)備,Internet等等復(fù)雜困難,SOA技術(shù)為此提供了基本解決方案。中間件如BEA的Tuxedo(類似于SRB),和IBM的CICSTransactionServer,都具有面向服務(wù)的體系結(jié)構(gòu)。

1.2中間件的優(yōu)點(diǎn)

中間件提供了比OS和網(wǎng)絡(luò)服務(wù)更有效的功能,基本優(yōu)如下(1)在網(wǎng)絡(luò)上應(yīng)用和服務(wù)間交互時位置透明;(2)所提供的支持異構(gòu)平臺的同步,異步和對話消息等應(yīng)用接口,全部透明,使應(yīng)用獨(dú)立于OS和網(wǎng)絡(luò)服務(wù)及硬件,從而簡化了分布式應(yīng)用開發(fā)工作,使應(yīng)用易于維護(hù)和管理,易于擴(kuò)展,適應(yīng)性增強(qiáng),開發(fā)周期縮短但使用壽命延長;(3)使用數(shù)據(jù)依賴性路由機(jī)制,可以基于消息上下文和優(yōu)先權(quán)調(diào)整其路由,從而維持事務(wù)處理的有效性和保證最佳效率及靈活性,在營業(yè)和技術(shù)環(huán)境中,縮短響應(yīng)時間;(4)基于系統(tǒng)實(shí)時負(fù)載和吞吐量,通過復(fù)制分布式網(wǎng)絡(luò)上的應(yīng)用服務(wù)和動態(tài)平衡所有有效資源負(fù)載,使應(yīng)用可以在不同的分布式的節(jié)點(diǎn)上,并行處理請求和多重事務(wù),并且其事務(wù)隊列,允許分布式應(yīng)用一起異步工作,保證最高可靠性和吞吐量及應(yīng)用的效率。①通過多層體系結(jié)構(gòu),優(yōu)化異構(gòu)環(huán)境下的事務(wù)處理,提高處理效率和改善資源管理;②通過強(qiáng)有力的基于標(biāo)準(zhǔn)的API,可以整合和充分利用已存在的資源;③持續(xù)提升計算平臺和開發(fā)工具而不影響應(yīng)用;④通過在多層次重復(fù)使用,減低開發(fā)成本,提高程序員生產(chǎn)力;⑤由于其可靠,安全,有效,準(zhǔn)確,易維護(hù),易管理,從而提升應(yīng)用軟件質(zhì)量。

1.3使用中間件時面臨的問題及其解決辦法

中間件主要解決的是分布式應(yīng)用的連接和異構(gòu)問題,但中間件并非萬能,如:(1)理論與實(shí)踐有相當(dāng)?shù)牟罹?,開發(fā)者必須依賴于中間件生產(chǎn)商;(2)大量不合理的中間件成為使用中間件的障礙,開發(fā)者必須慎重選擇;(3)當(dāng)中間件服務(wù)提升編程分布式應(yīng)用級別時,應(yīng)用開發(fā)者就面臨很大困難;(4)解決這三個問題的關(guān)鍵是必須明白應(yīng)用問題和使之成為分布式應(yīng)用的中間件服務(wù)的價值,為此,開發(fā)者須清楚哪些功能是需要的,這有三類a.分布式系統(tǒng)服務(wù),這包括通訊,程序交互,數(shù)據(jù)管理等服務(wù),這類有RPC,MOM,ORB;b.使應(yīng)用能夠存取基于網(wǎng)絡(luò)資源的服務(wù),這類有TPM,RDBMS服務(wù)如SQL,ODBC,X/OpenCLI等;c.中間件管理服務(wù),可持續(xù)監(jiān)視應(yīng)用和系統(tǒng)的功能,以保證分布式環(huán)境的最佳性能。

2在計費(fèi)系統(tǒng)中的應(yīng)用

中間件在計費(fèi)系統(tǒng)中的應(yīng)用越來越廣泛,比如對于前臺客戶服務(wù)端的應(yīng)用,使用其獨(dú)立于OS和網(wǎng)絡(luò)服務(wù)及硬件的API,可以輕易使交互界面整齊一致,和擴(kuò)展應(yīng)用的功能。

2.1兩層與多層體系結(jié)構(gòu)的差異

在使用中間件過程中,Client/Server的兩層體系結(jié)構(gòu)在實(shí)際應(yīng)用中已暴露出一些問題。由于在這種體系結(jié)構(gòu)下,客戶端程序直接訪問系統(tǒng)資源,很容易造成網(wǎng)絡(luò)上數(shù)據(jù)流量過大,甚至導(dǎo)致系統(tǒng)癱瘓,而且可維護(hù)性差、不易擴(kuò)展。相比之下,多層體系結(jié)構(gòu)有著明顯的好處。進(jìn)程和資源管理:通過對服務(wù)進(jìn)程的管理,使得系統(tǒng)能夠用盡量少的服務(wù)進(jìn)程處理盡量多的請求,減少進(jìn)程的啟動/終止次數(shù),控制服務(wù)進(jìn)程的總數(shù),使得服務(wù)器在設(shè)定的負(fù)載下高效地工作,而且,當(dāng)請求服務(wù)的數(shù)量超過了服務(wù)器的處理速度時,中間件還可以把請求排隊進(jìn)行緩沖。對于數(shù)據(jù)庫系統(tǒng),任何服務(wù)進(jìn)程訪問數(shù)據(jù)庫都要和數(shù)據(jù)庫建立連接,通過長駐服務(wù)進(jìn)程,保持和復(fù)用與數(shù)據(jù)庫的連接,可以大大減少啟動/終止與數(shù)據(jù)庫連接的次數(shù)和時間。事務(wù)優(yōu)先級:通過指定事務(wù)優(yōu)先級,保證優(yōu)先級高的事務(wù)能盡快得到響應(yīng)。

2.2計費(fèi)系統(tǒng)面臨的問題

在計費(fèi)系統(tǒng)中,無論是前臺客戶端的交互程序,還是后臺的批處理程序,對數(shù)據(jù)庫的訪問都是極其頻繁的,因而對數(shù)據(jù)庫系統(tǒng)的吞吐量的要求極高,僅就前臺而言,如果客戶端直接(或通過存儲過程即StoredProcedure)訪問數(shù)據(jù)庫,則不僅不利于安全控制,難以防止黑客的惡意攻擊,同時,由于網(wǎng)絡(luò)流量太大,容易形成網(wǎng)絡(luò)瓶頸和數(shù)據(jù)庫訪問瓶頸,而且,數(shù)據(jù)庫連接數(shù)會過多,從而影響數(shù)據(jù)庫系統(tǒng)的響應(yīng)速度,降低系統(tǒng)性能。

2.3解決途徑

(1)使用中間件將系統(tǒng)分為三層(或多層),使事務(wù)邏輯和用戶界面分離,以此優(yōu)化系統(tǒng)結(jié)構(gòu)。事務(wù)邏輯放在應(yīng)用服務(wù)層,則軟件的維護(hù)集中在應(yīng)用服務(wù)層,而客戶端用戶界面則可以整齊一致,易于管理。而且由于是使用中間件的獨(dú)立于OS和網(wǎng)絡(luò)服務(wù)及硬件的API,增強(qiáng)了系統(tǒng)的可維護(hù)性和擴(kuò)充能力。

(2)將客戶端與系統(tǒng)資源(如數(shù)據(jù)庫)隔離開來,由中間件負(fù)責(zé)進(jìn)行鑒別管理,鑒定服務(wù)和授權(quán)服務(wù),客戶端無權(quán)限直接訪問數(shù)據(jù)庫,從而保證數(shù)據(jù)私有性。

(3)劃分出事務(wù)級權(quán)限,通過中間件的安全機(jī)制控制其訪問。雖然數(shù)據(jù)庫的權(quán)限有DDL和DML,但都屬于數(shù)據(jù)庫表級的權(quán)限,而實(shí)際應(yīng)用中往往以事務(wù)或角色為主,采用三層體系結(jié)構(gòu)可更加靈活、有效地實(shí)現(xiàn)事務(wù)級權(quán)限控制。

(4)采用三層體系結(jié)構(gòu),通過應(yīng)用服務(wù)器,避免了客戶端與數(shù)據(jù)庫直接連接。應(yīng)用服務(wù)器與數(shù)據(jù)庫服務(wù)器可方便地采用寬帶網(wǎng)連接,也就解決了數(shù)據(jù)庫訪問瓶頸及網(wǎng)絡(luò)瓶頸。

(5)通過增加應(yīng)用服務(wù)器來分擔(dān)部分應(yīng)用服務(wù)工作,可直接提高系統(tǒng)性能和處理速度,而原來的應(yīng)用服務(wù)器基本不受影響,而且可有效地解決客戶訪問服務(wù)層的瓶頸。

(6)利用中間件的路由機(jī)制、平衡負(fù)載功能,提高系統(tǒng)的整體性能和工作效率。除此之外,采用三層應(yīng)用體系結(jié)構(gòu),原有性能較差的設(shè)備可以更好地加以利用,不僅可以充分利用原有系統(tǒng)資源,而且使整個系統(tǒng)性能得到提高。

3結(jié)語

中間件的應(yīng)用越來越廣泛,特別是在分布式異構(gòu)平臺和網(wǎng)絡(luò)環(huán)境下,它使得極其復(fù)雜的分布式應(yīng)用開發(fā)問題變得特別簡單,不僅提高了應(yīng)用軟件的開發(fā)速度,而且,最大限度地保證了軟件質(zhì)量,提高了可靠性,由于獨(dú)立于開發(fā)平臺和硬件環(huán)境,從而保證了所開發(fā)軟件的可重復(fù)使用,可移植性和可擴(kuò)展性,大大降低了開發(fā)成本。電訊業(yè)發(fā)展迅速,對計費(fèi)系統(tǒng)性能要求越來越高,功能要求越來越多,選擇合適的中間件將對開發(fā)者有著重大影響。

免责声明

本站为第三方开放式学习交流平台,所有内容均为用户上传,仅供参考,不代表本站立场。若内容不实请联系在线客服删除,服务时间:8:00~21:00。

AI写作,高效原创

在线指导,快速准确,满意为止

立即体验
文秘服务 AI帮写作 润色服务 论文发表