国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Pushlet的CDMA 1x EVDO網(wǎng)絡(luò)實(shí)時(shí)監(jiān)測(cè)模型的設(shè)計(jì)

2013-09-15 01:58雒江濤
關(guān)鍵詞:流程圖瀏覽器客戶(hù)端

陳 式 雒江濤

(重慶郵電大學(xué) 通信網(wǎng)與測(cè)試技術(shù)重點(diǎn)實(shí)驗(yàn)室,重慶 400065)

1 概述

近年來(lái),隨著移動(dòng)互聯(lián)網(wǎng)的飛速發(fā)展,網(wǎng)絡(luò)性能的穩(wěn)定性與可靠性顯得尤為重要。網(wǎng)絡(luò)性能的實(shí)時(shí)監(jiān)測(cè)作為網(wǎng)絡(luò)性能管理的重要組成部分,它完成對(duì)系統(tǒng)中各用戶(hù)信令動(dòng)態(tài)數(shù)據(jù)的實(shí)時(shí)跟蹤,為運(yùn)營(yíng)商及時(shí)了解網(wǎng)絡(luò)的性能及運(yùn)行狀況提供了可靠的依據(jù)。

目前基于Web的網(wǎng)絡(luò)信令監(jiān)測(cè)系統(tǒng)由于其平臺(tái)無(wú)關(guān)性、使用方便等諸多優(yōu)點(diǎn)使其代表了網(wǎng)絡(luò)監(jiān)測(cè)系統(tǒng)的一種潮流。本文介紹一種基于Pushlet技術(shù)的網(wǎng)絡(luò)性能實(shí)時(shí)監(jiān)測(cè)設(shè)計(jì)方案,它適用于所有支持瀏覽器的環(huán)境中,而且與傳統(tǒng)的實(shí)時(shí)監(jiān)測(cè)方案相比,其實(shí)時(shí)性很高。

2 Pushlet技術(shù)

Pushlet是一種基于 Servlet技術(shù)的comet實(shí)現(xiàn)。在Servlet機(jī)制下,數(shù)據(jù)從server端的Java對(duì)象直接推送(push)到(動(dòng)態(tài))HTML頁(yè)面,而無(wú)需任何Java applet或者插件的幫助。它使server端可以周期性地更新client的web頁(yè)面,這與傳統(tǒng)的request/response方式相悖。瀏覽器client為兼容JavaScript1.4版本以上的瀏覽器(如 Internet Explorer、FireFox),并使用JavaScript/Dynamic HTML特性。而底層實(shí)現(xiàn)使用一個(gè)servlet通過(guò)Http連接到JavaScript所在的瀏覽器,并將數(shù)據(jù)推送到后者。Pushlet有許多明顯的優(yōu)點(diǎn),比如標(biāo)準(zhǔn)的瘦客戶(hù)、平臺(tái)無(wú)關(guān)、方便地?cái)U(kuò)展具體的應(yīng)用以及容易穿越防火墻的通道等。它主要用于監(jiān)控動(dòng)態(tài)的數(shù)據(jù)源,比如證券交易所、天氣、投票和一些其他的實(shí)時(shí)系統(tǒng),另外Pushlet還支持客戶(hù)端主動(dòng)上載事件。

Pushlet的設(shè)計(jì)架構(gòu)圖(見(jiàn)圖1):

Pushlet的基本思想是將持續(xù)連接框架frame1設(shè)置為隱藏,并使frame1保持HTTP連接,由Frame1接收來(lái)自服務(wù)器端的javascript,利用javascript代碼來(lái)更新frame2的內(nèi)容,即可實(shí)現(xiàn)動(dòng)態(tài)向客戶(hù)端推送數(shù)據(jù)。

圖1 Pushlet框架

圖2 發(fā)出監(jiān)視命令流程

Pushlet框架允許client訂閱在server端的主題(subject),而server則接收訂閱,然后在server端的訂閱主題所對(duì)應(yīng)的數(shù)據(jù)變化時(shí)推送數(shù)據(jù)到client。此框架的基本設(shè)計(jì)模型是發(fā)布/訂閱(Publish/Subscrib),也被稱(chēng)為觀察者(Observer)。它由server和client兩部分組建而成。各個(gè)模塊的功能如下:

(1)Pushlet:Pushlet 是 一 個(gè) servlet,通過(guò)doGet/doPost方法被調(diào)用。多個(gè)client可以同時(shí)調(diào)用同一個(gè)Pushlet,Pushlet接受客戶(hù)端的請(qǐng)求,并創(chuàng)建訂閱者(PushletSubscriber對(duì)象),由該訂閱者保持客戶(hù)請(qǐng)求,返回內(nèi)容。

(2)PushletSubscriber:是一個(gè)實(shí)現(xiàn) Subscriber接口的對(duì)象,與每個(gè)客戶(hù)端對(duì)應(yīng)的訂閱者,首先根據(jù)客戶(hù)端的請(qǐng)求生成客戶(hù)端適配器ClientAdapter并通過(guò)join()方法向Publisher類(lèi)進(jìn)行注冊(cè)并將自身添加到Publisher的內(nèi)部事件列表,每個(gè)事件對(duì)應(yīng)一個(gè)主題。如果有事件入隊(duì)列,則PushletSubscriber被喚醒,同時(shí)調(diào)用 ClientAdapter向客戶(hù)端推送數(shù)據(jù)。

(3)ClientAdapter:屏蔽了不同的客戶(hù)端協(xié)議的差異,將PushletSubscriber獲取的事件轉(zhuǎn)換成javascript格式,并將它推送到客戶(hù)端瀏覽器,因此實(shí)現(xiàn)了適用于所有類(lèi)型的瀏覽器。

(4)Publisher:維護(hù)著一組者的列表,提供靜態(tài)接口給其他類(lèi)訂閱/發(fā)布消息,當(dāng)有事件到來(lái)時(shí),通過(guò)比較事件的主題和訂閱者的主題,將事件放入相對(duì)應(yīng)的事件隊(duì)列,并喚醒所有在此事件隊(duì)列上等待的客戶(hù)端訂閱者(PushletSubscriber)。

(5)EventSource:事件源,產(chǎn)生 Pushlet,并調(diào)用Publisher發(fā)布事件。

3 實(shí)時(shí)監(jiān)測(cè)模型設(shè)計(jì)

CDMA2000 1x EVDO網(wǎng)絡(luò)用戶(hù)數(shù)據(jù)量大,涉及到的協(xié)議較多,為了對(duì)網(wǎng)絡(luò)的整體性能均能及時(shí)、全面地進(jìn)行監(jiān)測(cè),其實(shí)時(shí)監(jiān)測(cè)模塊的性能需求大致如下:可以選擇指定協(xié)議、指定用戶(hù)或全部用戶(hù)進(jìn)行實(shí)時(shí)跟蹤,跟蹤到的動(dòng)態(tài)數(shù)據(jù)周期性地推送到客戶(hù)端瀏覽器,并能將業(yè)務(wù)實(shí)現(xiàn)流程如實(shí)記錄并通過(guò)流程圖反應(yīng)出來(lái)。

本文的實(shí)時(shí)監(jiān)測(cè)模型基于重慶電信CDMA2000 1x EVDO信令監(jiān)測(cè)系統(tǒng)項(xiàng)目下的一個(gè)子模塊,該系統(tǒng)采用四層B/S Web模型思想進(jìn)行系統(tǒng)的架構(gòu),采用JSP頁(yè)面開(kāi)發(fā)語(yǔ)言,Apache服務(wù)器,Oracle數(shù)據(jù)庫(kù),SUN Solaris服務(wù)器搭建的實(shí)驗(yàn)環(huán)境作為開(kāi)發(fā)環(huán)境。在任意的web瀏覽器作為客戶(hù)端,讓用戶(hù)可以在任何地方實(shí)時(shí)監(jiān)控網(wǎng)絡(luò)運(yùn)營(yíng)狀況、實(shí)時(shí)跟蹤業(yè)務(wù)實(shí)現(xiàn)流程。這樣,以流程、業(yè)務(wù)為主導(dǎo),貼近運(yùn)營(yíng)商,為運(yùn)營(yíng)商的網(wǎng)絡(luò)優(yōu)化方案、系統(tǒng)升級(jí)、及時(shí)作出各種決策提供有效的依據(jù)。

3.1 方案的選擇

傳統(tǒng)的實(shí)時(shí)監(jiān)測(cè)實(shí)現(xiàn)方案是在瀏覽器客戶(hù)端設(shè)置一個(gè)定時(shí)器,在該模型中假定其周期為30秒,啟動(dòng)實(shí)時(shí)監(jiān)測(cè)后,客戶(hù)端每隔30秒向服務(wù)器發(fā)起一個(gè)http連接,服務(wù)器啟動(dòng)后臺(tái)程序查詢(xún)數(shù)據(jù)庫(kù)并將查詢(xún)結(jié)果返回客戶(hù)端瀏覽器。

該方案實(shí)現(xiàn)比較簡(jiǎn)單,但是缺點(diǎn)卻很明顯。啟動(dòng)實(shí)時(shí)監(jiān)測(cè)后每隔30秒客戶(hù)端瀏覽器都會(huì)進(jìn)行刷新,用戶(hù)體驗(yàn)較差;其次,數(shù)據(jù)量較大時(shí),每次刷新頁(yè)面的延遲感很強(qiáng),實(shí)時(shí)性較差?;谝陨显颍x擇了基于Pushlet的實(shí)時(shí)監(jiān)測(cè)模型方案。

3.2 基于Pushlet的實(shí)時(shí)監(jiān)測(cè)模型整體架構(gòu)設(shè)計(jì)

圖2對(duì)應(yīng)的是客戶(hù)端發(fā)出監(jiān)視命令的流程圖,具體流程如下:

首先,用戶(hù)啟動(dòng)或停止實(shí)時(shí)業(yè)務(wù)監(jiān)測(cè),客戶(hù)端代理接收用戶(hù)事件,根據(jù)監(jiān)視命令創(chuàng)建監(jiān)視任務(wù),創(chuàng)建一個(gè)與客戶(hù)端對(duì)應(yīng)的訂閱者(PushletSubscriber),創(chuàng)建成功后會(huì)向客戶(hù)端代理返回一個(gè)成功響應(yīng)。

其次, PushletSubscriber創(chuàng)建客戶(hù)端適配器,將與該客戶(hù)端對(duì)應(yīng)的訂閱者(PushletSubscriber)注冊(cè)到事件發(fā)布管理器上,周期性調(diào)用后臺(tái)查詢(xún)方法,并將數(shù)據(jù)主動(dòng)推送到客戶(hù)端瀏覽器。

再次,根據(jù)客戶(hù)端的監(jiān)視命令,創(chuàng)建相應(yīng)的客戶(hù)端查看任務(wù),對(duì)其中的監(jiān)視類(lèi)型和監(jiān)視對(duì)象進(jìn)行緩存,緩存是為了能夠綜合各個(gè)客戶(hù)端的命令,當(dāng)有多個(gè)客戶(hù)端同時(shí)監(jiān)控一個(gè)對(duì)象時(shí),只需建立一個(gè)監(jiān)控對(duì)象的緩存狀態(tài)信息。

圖3 推送數(shù)據(jù)流程

圖4 業(yè)務(wù)追蹤實(shí)時(shí)監(jiān)測(cè)結(jié)果圖

最后,任務(wù)管理器根據(jù)緩存狀態(tài),向服務(wù)器返回監(jiān)視命令的響應(yīng),準(zhǔn)備推送數(shù)據(jù)。

圖3為推送數(shù)據(jù)的過(guò)程,它顯示了如何產(chǎn)生事件并將其分發(fā)到客戶(hù)端瀏覽器。網(wǎng)元適配器把數(shù)據(jù)發(fā)送給事件源管理器,事件源管理器與訂閱者進(jìn)行主題匹配,確定要發(fā)送的客戶(hù)端。若有匹配的訂閱者,則發(fā)布事件,把事件推送到客戶(hù)端適配器,將數(shù)據(jù)以JavaScript的形式發(fā)送到客戶(hù)端代理,實(shí)現(xiàn)了數(shù)據(jù)的實(shí)時(shí)推送。

3.3 業(yè)務(wù)流程圖的設(shè)計(jì)與實(shí)現(xiàn)

隨著手機(jī)上網(wǎng)業(yè)務(wù)的發(fā)展,手機(jī)上網(wǎng)業(yè)務(wù)類(lèi)型繁多,新業(yè)務(wù)也層出不窮。用戶(hù)的手機(jī)上網(wǎng)過(guò)程,涉及到多個(gè)信令的流程,為了方便運(yùn)營(yíng)商對(duì)某用戶(hù)的所有業(yè)務(wù)流程有一個(gè)直觀的了解與判斷,本模塊設(shè)計(jì)了業(yè)務(wù)流程圖功能:通過(guò)匹配某用戶(hù)的grekey值,統(tǒng)計(jì)出該用戶(hù)在某時(shí)間段內(nèi)的所有信令過(guò)程,并繪制出業(yè)務(wù)流程圖,具體步驟如下:

第一步,點(diǎn)擊某條用戶(hù)記錄的超鏈接,獲取該用戶(hù)的grekey;

第二步,依次用該grekey值分別與A11注冊(cè)記錄、PPP建立連接、PPP終止連接、A12建立連接、WAP連接過(guò)程、WAP業(yè)務(wù)過(guò)程、MMS發(fā)送過(guò)程、MMS接收過(guò)程、AAA認(rèn)證過(guò)程、AAA計(jì)費(fèi)過(guò)程等數(shù)據(jù)庫(kù)相應(yīng)的CDR表中在該時(shí)間段內(nèi)所有用戶(hù)記錄的GREKEY字段匹配,判斷其是否相等:①若匹配的grekey值相等,說(shuō)明是該用戶(hù)的一條業(yè)務(wù)記錄,則繪制一條流程線(xiàn),同時(shí)判斷該業(yè)務(wù)過(guò)程是否成功,若成功,則該線(xiàn)繪制成藍(lán)色;若失敗,則繪制成灰色;②依次對(duì)上述所有的業(yè)務(wù)過(guò)程重復(fù)上個(gè)步驟;③循環(huán)結(jié)束,則業(yè)務(wù)流程圖繪制完成。

4 結(jié)果顯示及分析

圖5 業(yè)務(wù)流程結(jié)果圖

結(jié)果顯示模塊采用Java編程語(yǔ)言,利用JSP+Hibernate+Spring技術(shù)完成用戶(hù)界面的設(shè)計(jì),供用戶(hù)查詢(xún)行為分析結(jié)果。CDMA2000 1x EVDO網(wǎng)絡(luò)由于用戶(hù)業(yè)務(wù)較多,這里提供了按不同業(yè)務(wù)進(jìn)行實(shí)時(shí)監(jiān)測(cè)的選擇。圖5是2012年3月1日在重慶電信機(jī)房的監(jiān)測(cè)結(jié)果,對(duì)用戶(hù)號(hào)碼18983699099發(fā)送彩信實(shí)時(shí)監(jiān)測(cè)功能驗(yàn)證,跟蹤結(jié)果正常。啟動(dòng)實(shí)時(shí)業(yè)務(wù)跟蹤后,客戶(hù)端瀏覽器不會(huì)刷新,每隔周期T(可自由設(shè)置周期,本文中設(shè)置為30秒)服務(wù)器主動(dòng)向客戶(hù)端推送數(shù)據(jù),數(shù)據(jù)動(dòng)態(tài)在界面上周期性累加,不會(huì)出現(xiàn)刷新和頁(yè)面停頓的感覺(jué),實(shí)時(shí)性高,用戶(hù)體驗(yàn)良好。

業(yè)務(wù)流程圖能追蹤到某具體用戶(hù)從開(kāi)始監(jiān)測(cè)時(shí)刻T1到查點(diǎn)擊查看業(yè)務(wù)流程圖時(shí)刻T2之間所有業(yè)務(wù)的具體流程,方便運(yùn)營(yíng)商對(duì)某用戶(hù)的所有業(yè)務(wù)流程有一個(gè)直觀的了解與判斷。如圖所示,顯示的是2012年3月30日10時(shí)開(kāi)始某時(shí)段內(nèi)的某用戶(hù)所有業(yè)務(wù)流程。藍(lán)色表示成功記錄,灰色表示失敗記錄。

維護(hù)人員可以通過(guò)CDRID的超級(jí)鏈接,打開(kāi)該CDR記錄的關(guān)聯(lián)流程圖,如下圖所示。通過(guò)流程圖的直觀展示,維護(hù)人員可以了解用戶(hù)操作的完整流程。對(duì)于失敗記錄,可以一目了然的發(fā)現(xiàn)失敗的環(huán)節(jié),便于問(wèn)題跟蹤定位。

結(jié)語(yǔ)

本文研究?jī)?nèi)容來(lái)自重慶電信CDMA2000 1x EVDO信令監(jiān)測(cè)系統(tǒng)項(xiàng)目,從實(shí)時(shí)性、良好用戶(hù)體驗(yàn)的角度出發(fā),基于Pushlet技術(shù)設(shè)計(jì)了一種普遍適用的用戶(hù)業(yè)務(wù)實(shí)時(shí)監(jiān)測(cè)模型,該模型能夠自動(dòng)完成實(shí)時(shí)數(shù)據(jù)從服務(wù)器端推送到客戶(hù)端,并且不會(huì)出現(xiàn)延遲感和頁(yè)面刷新,有著良好的用戶(hù)體驗(yàn)。同時(shí),用戶(hù)業(yè)務(wù)流程圖可對(duì)具體用戶(hù)在某時(shí)間段內(nèi)的業(yè)務(wù)流程通過(guò)圖形形象、直觀地體現(xiàn)出來(lái),便于運(yùn)營(yíng)商的監(jiān)測(cè)。該模型可廣泛用于網(wǎng)絡(luò)監(jiān)控和維護(hù),了解網(wǎng)絡(luò)的即時(shí)運(yùn)行狀況,為運(yùn)營(yíng)商為運(yùn)營(yíng)商的網(wǎng)絡(luò)優(yōu)化方案、系統(tǒng)升級(jí)、及時(shí)作出各種決策提供有效的依據(jù)。

[1]景慎艷,基于Pushlet服務(wù)器推技術(shù)的研究與應(yīng)用.現(xiàn)代計(jì)算機(jī),2009(10).

[2]尤淑輝,基于Pushlet的網(wǎng)絡(luò)性能實(shí)時(shí)監(jiān)控系統(tǒng).計(jì)算機(jī)應(yīng)用,2003(12).

猜你喜歡
流程圖瀏覽器客戶(hù)端
反瀏覽器指紋追蹤
縣級(jí)臺(tái)在突發(fā)事件報(bào)道中如何應(yīng)用手機(jī)客戶(hù)端
孵化垂直頻道:新聞客戶(hù)端新策略
基于Vanconnect的智能家居瘦客戶(hù)端的設(shè)計(jì)與實(shí)現(xiàn)
專(zhuān)利申請(qǐng)審批流程圖
專(zhuān)利申請(qǐng)審批流程圖
環(huán)球?yàn)g覽器
寧海縣村級(jí)權(quán)力清單36條
客戶(hù)端空間數(shù)據(jù)緩存策略
《天津醫(yī)藥》稿件處理流程圖
永寿县| 绩溪县| 宣威市| 观塘区| 志丹县| 乾安县| 沧州市| 河源市| 建宁县| 萨迦县| 泰和县| 玛曲县| 鞍山市| 灵璧县| 青州市| 梁平县| 祁连县| 登封市| 蒙城县| 玉环县| 松阳县| 阜南县| 益阳市| 上犹县| 密云县| 百色市| 松滋市| 葫芦岛市| 潞城市| 芦山县| 依安县| 竹北市| 威海市| 崇仁县| 姚安县| 星子县| 四会市| 五峰| 深州市| 萝北县| 和平区|