<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>
關(guān) 閉

新聞中心

EEPW首頁(yè) > 工控自動(dòng)化 > 設計應用 > 基于RMI的分布式銀行自助終端監控系統的研究及實(shí)現

基于RMI的分布式銀行自助終端監控系統的研究及實(shí)現

——
作者:陜西師范大學(xué)計算機科學(xué)學(xué)院 西安財經(jīng)學(xué)院 張永福 張娟 時(shí)間:2006-10-20 來(lái)源:現代電子技術(shù) 收藏
近年來(lái)隨著(zhù)我國金融體制改革的不斷深人,銀行企業(yè)不斷利用信息技術(shù)拓寬業(yè)務(wù),其中對于自助銀行,使其得到了飛速發(fā)展,因此,依托現在計算機技術(shù)、網(wǎng)絡(luò )通信技術(shù)、數據安全技術(shù)開(kāi)發(fā)出能對各種自助終端進(jìn)行監控,網(wǎng)絡(luò )拓展性良好,使用靈活方便,安全的銀行自助終端監控系統成為當務(wù)之急。利用J2EE系統平臺[1],能有效地實(shí)現分布式多層體系結構的應用程序開(kāi)發(fā)。

1 [2]

(Remote Method Invocation,遠程方法調用)是J2EE技術(shù)中的一項,是Java語(yǔ)言實(shí)現有力網(wǎng)絡(luò )功能的固有機制,允許Java編寫(xiě)分布式對象,并允許對象在內存中通信,可跨越Java虛擬機通信[3-4],也可跨越物理設備。

RMI實(shí)現實(shí)際上由3個(gè)抽象層建立:

Stubs/Skeletons Layer(存根/主架層);Remote Reference Layer(遠程引用層);Transport Layer(傳輸層)。

2 監控系統的設計與實(shí)現

2.1 系統網(wǎng)絡(luò )結構

本系統以中國銀行內部網(wǎng)絡(luò )為依托,采用集中式網(wǎng)絡(luò )結構構建而成。如圖1所示。

系統采用一臺監控服務(wù)器,連在中國銀行主干網(wǎng)上,和提供數據源的前置機放入同一網(wǎng)段。服務(wù)器主機上運行Web服務(wù)器、應用服務(wù)器和數據庫服務(wù)器,為用戶(hù)提供Web方式訪(fǎng)問(wèn)。監控客戶(hù)端以瀏覽器的形式在工作站上通過(guò)網(wǎng)絡(luò )直接訪(fǎng)問(wèn)web服務(wù)器,進(jìn)行信息查詢(xún)、監控管理、報表打印、系統維護等。環(huán)境內其他用戶(hù)可通過(guò)路由器、DDN專(zhuān)線(xiàn)從相應工作站以web形式訪(fǎng)問(wèn)Web服務(wù)器。

2.2 系統邏輯層次結構圖

監控系統由數據庫服務(wù)器、應用服務(wù)器、web服務(wù)器和瀏覽器組成,通過(guò)Intranet/Internet與綜合前置系統連接。

本文將3層結構模式應用于銀行自助終端監控系統,這3層分別是:客戶(hù)層;Web層(應用邏輯層);層(見(jiàn)圖2)。

這種結構無(wú)疑是富有生命力的,監控臺使用瀏覽器直接與銀行Intranet連接,監控服務(wù)器(監控服務(wù)器由Application Server和DB Servet兩臺服務(wù)器組成)在接入Intranet之前與一個(gè)Web Server連接,再通過(guò)Web Server接入Internet。通過(guò)Internet在監控服務(wù)器與監控臺之間建立物理連接。

2.3 應用系統結構

自助設備監控系統是監控前端自助設備運行狀態(tài),交易情況的網(wǎng)上應用系統,他的數據來(lái)自于數據采集模塊。前端自助設備運行時(shí)發(fā)送狀態(tài)交易數據到前置機、主機系統,由前置機、主機系統進(jìn)行處理,并將狀態(tài)數據、交易情況記入數據庫或LOG文件中。如圖3所示,由監控系統數據采集模塊定時(shí)采集數據庫或LOG文件中的數據到監控數據庫中,監控應用系統負責對監控數據統一處理,并通過(guò)監控客戶(hù)端實(shí)時(shí)請求發(fā)送到監控客戶(hù)端進(jìn)行顯示及其他處理。

3 RMI技術(shù)在監控系統中的應用

中國銀行天津分行在每個(gè)地區都下設支行,每個(gè)支行負責管理本地區的ATM網(wǎng)點(diǎn),因此各個(gè)支行之間網(wǎng)點(diǎn)ATM自助設備的狀態(tài)、交易信息不能共享.那么各個(gè)地區的監控客戶(hù)端就只能通過(guò)本地區支行的監控服務(wù)器實(shí)時(shí)監控本地區的ATM網(wǎng)點(diǎn)的自助終端設備,為了使身處各個(gè)地區的監控客戶(hù)端都能夠監控各個(gè)支行所轄的ATM網(wǎng)點(diǎn)自助終端設備,就必須采用分布式的監控系統。每個(gè)支行都設置一臺監控服務(wù)器,與各自所在支行的前置系統相連接,利用RMI技術(shù)將實(shí)時(shí)監控、遠程控制、查詢(xún)統計組件注冊為遠程對象,監控客戶(hù)機在任何支行的監控服務(wù)器上的注冊服務(wù)表用遠程對象的名字查找相應遠程對象,然后調用他的方法,就可以像監控本地區的ATM自助終端設備那樣監控其他地區的ATM自助終端設備。

下面本文將以對ATM狀態(tài)的實(shí)時(shí)監控如何借助RMI技術(shù)實(shí)現做以討論[5]。

3.1 定義遠程接口

在Java中,遠程對象是實(shí)現遠程接口的類(lèi)的實(shí)例,遠程接口聲明每個(gè)要遠程調用的方法。在需要創(chuàng )建一個(gè)遠程對象的時(shí)候,通過(guò)傳遞一個(gè)接口來(lái)隱藏基層的實(shí)施細節,客戶(hù)通過(guò)接口句柄發(fā)送消息即可。遠程接口具有如下特點(diǎn):

(1)遠程接口必須為public屬性。

(2)遠程接口必須擴展接口java.rmi.Remote。

(3)除與應用程序本身特定的例外之外,遠程接口中的每個(gè)方法都必須在自己的throws從句中聲明java.rmi.RemoteException。

(4)作為參數或返回值傳遞的一個(gè)遠程對象(不管是直接,還是本地對象中嵌入)必須聲明為遠程接口,而不應聲明為實(shí)施類(lèi)。

下面是對ATM狀態(tài)實(shí)時(shí)監控的遠程接口A(yíng)TM_StatusShow_Interface的定義。

3.2 實(shí)現遠程接口[6]

遠程對象實(shí)現類(lèi)必須擴展遠程對象java.rmi.UnicastRemoteObject類(lèi),并實(shí)現所定義的遠程接口。遠程對象的實(shí)現類(lèi)中包含實(shí)現每個(gè)遠程接口所指定的遠程方法的代碼。這個(gè)類(lèi)也可以含有附加的方法,但客戶(hù)只能使用遠程接口中的方法。因為客戶(hù)是指向接口的一個(gè)句柄,而不是他的哪個(gè)類(lèi)。必須為遠程對象定義構造函數,即使只準備定義一個(gè)默認構造函數,用他調用基礎類(lèi)構造函數。

3.3 編寫(xiě)服務(wù)器類(lèi)

通過(guò)ATM_StatusShow_Server創(chuàng )建一個(gè)遠程對象的實(shí)例,并通過(guò)java.rmi.registry.LocateRegistry類(lèi)的createRegistry方法從指定端口號啟動(dòng)注冊服務(wù)程序,注冊服務(wù)程序的缺省運行端口為1099。必須將遠程對象名字綁定到對遠程對象的引用上。

3.4 編寫(xiě)使用遠程服務(wù)的客戶(hù)機類(lèi)。

客戶(hù)機類(lèi)的主要功能有2個(gè):一是通過(guò)Naming.lookup方法來(lái)構造注冊服務(wù)程序stub程序實(shí)例;二是調用服務(wù)器遠程對象上的遠程方法。

3.5 為遠程對象實(shí)現創(chuàng )建根和干

要創(chuàng )建存根程序和主架文件,應以包含遠程對象實(shí)現的已編譯類(lèi)包全名運行rmic編譯器。存根(Stub)是遠程對象在客戶(hù)端的代理,他將RMI調用傳遞給服務(wù)器端的主架(Skeleton),后者負責將該調用傳遞給實(shí)際的遠程方法:

運行rmic,RMI目錄下就會(huì )多出2個(gè)新類(lèi):

ATM_StatusShow_Impl_Stub.class

ATM_StatusShow_Impl_Skel.class

他們分別對應的是存根(stub)和主架(skeleton)。

4 結 論

本系統在中國銀行天津分行的支持下已投入使用,經(jīng)過(guò)多次測試和實(shí)際運行,用戶(hù)對于本系統的評價(jià)比較滿(mǎn)意。在運行速度和運行穩定性上都能達到要求。對于用戶(hù)的日常工作負擔起到了較大減輕的作用,提高了工作效率,簡(jiǎn)化了溝通手續,豐富了查詢(xún)能力,使統計結果更加實(shí)時(shí)、靈活和準確。從技術(shù)角度上看,本系統采用RMI技術(shù)非常好地解決了分布式應用的問(wèn)題。



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>