龔興興 王驁
(1中國(guó)電子科技集團(tuán)公司第五十四研究所,河北石家莊050081)
(2 云南大學(xué)云南昆明 650031)
基于動(dòng)態(tài)推送技術(shù)的網(wǎng)絡(luò)服務(wù)設(shè)計(jì)與實(shí)現(xiàn)
龔興興1王驁2
(1中國(guó)電子科技集團(tuán)公司第五十四研究所,河北石家莊050081)
(2 云南大學(xué)云南昆明 650031)
隨著時(shí)代的進(jìn)步,越來(lái)越多的人習(xí)慣于使用手機(jī)或者平板電腦等智能手持設(shè)備進(jìn)行業(yè)務(wù)處理和通信,而在國(guó)內(nèi)外也涌現(xiàn)了很多在各種移動(dòng)設(shè)備上使用的軟件,但是隨著用戶對(duì)數(shù)據(jù)獲取實(shí)時(shí)性要求的加強(qiáng),普通的人工刷新方式已經(jīng)無(wú)法滿足。而采用推送的方式,無(wú)疑可以解決這一問(wèn)題,通過(guò)服務(wù)器和客戶端維持網(wǎng)絡(luò)連接的方式來(lái)實(shí)時(shí)的獲取更新數(shù)據(jù)[1]。那么針對(duì)推送技術(shù)的特點(diǎn),對(duì)基于動(dòng)態(tài)推送的網(wǎng)絡(luò)服務(wù)進(jìn)行了劃分,設(shè)計(jì)并實(shí)現(xiàn)了一套服務(wù)架構(gòu)。
智能手持設(shè)備 實(shí)時(shí)性 網(wǎng)絡(luò)服務(wù) 推送技術(shù)
隨著科技的進(jìn)步時(shí)代的發(fā)展,智能手機(jī)和平板電腦越來(lái)越普及,而應(yīng)用在這些設(shè)備上的軟件也越來(lái)越多,而其中更不乏支持網(wǎng)絡(luò)消息的離線訪問(wèn)以及推送的功能。這些軟件大部分都采用開(kāi)發(fā)式的架構(gòu)模式,這樣可以使大量的數(shù)據(jù)篩選和消息的離線查看變得更為方便和容易實(shí)現(xiàn)。隨著企業(yè)信息化的加快和業(yè)務(wù)的需要,傳統(tǒng)的依靠手動(dòng)獲取數(shù)據(jù)以及消息的方式變得已經(jīng)不能滿足用戶的要求,這樣就出現(xiàn)了推送技術(shù),它通過(guò)服務(wù)端和客戶端保持一定網(wǎng)絡(luò)連接的方式來(lái)使服務(wù)能夠主動(dòng)的找到客戶端,并發(fā)放數(shù)據(jù)。
與普通的腳本框架結(jié)構(gòu)類似,基于Push技術(shù)的框架結(jié)構(gòu)也是異步的,網(wǎng)絡(luò)傳輸?shù)臅r(shí)延基本上是可以忽略的。這樣的話,框架就極適用于對(duì)數(shù)據(jù)實(shí)時(shí)性要求很高的場(chǎng)景,假若不依賴于其他第三方軟件或者插件,軟件很難達(dá)到這個(gè)目的。對(duì)于用戶少的情況來(lái)講,腳本框架能夠提高瀏覽器的反應(yīng)速度,但是多用戶的場(chǎng)景卻會(huì)顯得能力不足,當(dāng)多用戶協(xié)同工作的時(shí)候,很難獲取到其他用戶的數(shù)據(jù)情況。依照舊的模式,如果某個(gè)用戶需要獲取當(dāng)前情況其他用戶的數(shù)據(jù)或者是狀態(tài),需要手動(dòng)的進(jìn)行查詢,或者依靠瀏覽器輪詢模式。但是采用推送技術(shù)就能簡(jiǎn)單的解決這個(gè)問(wèn)題,瀏覽器或客戶端不需要定時(shí)的去查詢服務(wù)器,當(dāng)服務(wù)器自身發(fā)現(xiàn)有新的數(shù)據(jù)產(chǎn)生,或者其他用戶的狀態(tài)發(fā)生某些變化需要通知某些客戶端的時(shí)候,就會(huì)主動(dòng)的去聯(lián)系客戶端,并推送數(shù)據(jù)。這樣就大大地節(jié)約了帶寬,不但能夠提高客戶端和服務(wù)器協(xié)同工作的效率,也同時(shí)讓客戶端的速度提高很多,從而為用戶帶來(lái)更好的體驗(yàn),并且很大程度避免通過(guò)輪詢方式所帶來(lái)的工作性能的問(wèn)題?;赑ush技術(shù)的框架有以下幾個(gè)優(yōu)點(diǎn):
①節(jié)省流量,驗(yàn)證簡(jiǎn)潔化:由于客戶端的靜態(tài)元素不需要進(jìn)行頻繁的刷新操作,這樣就能夠避免和服務(wù)器進(jìn)行網(wǎng)絡(luò)連接的建立斷開(kāi)操作,請(qǐng)求的內(nèi)容體頁(yè)不需要冗余的頭數(shù)據(jù)信息,使網(wǎng)絡(luò)帶寬的負(fù)載明顯降低;于建設(shè)于現(xiàn)有軟件體系結(jié)構(gòu)上:Push框架的主要作用的獲取以及更新有動(dòng)態(tài)效果的元素,服務(wù)器端將實(shí)時(shí)數(shù)據(jù)由數(shù)據(jù)源服務(wù)器獲取之后,將其作為服務(wù)的返回內(nèi)容發(fā)布,客戶端獲取到數(shù)據(jù)后自動(dòng)做動(dòng)態(tài)更新的操作;③與Ajax框架相結(jié)合,程序的可修改性強(qiáng):現(xiàn)有Web2.0框架和Ajax腳本框架讓網(wǎng)頁(yè)用戶的體驗(yàn)更接近桌面應(yīng)用程序,而Push框架與Ajax腳本框架的結(jié)合提供了實(shí)時(shí)信息傳送的更佳方式,這就展現(xiàn)了一種更高性能也更易于修改的架構(gòu)方式。
對(duì)于一般的Web程序來(lái)說(shuō),都是基于頁(yè)面刷新的,在刷新的過(guò)程中,瀏覽器或者客戶端會(huì)堵塞等待,當(dāng)數(shù)據(jù)傳送完畢,瀏覽器或者客戶端才能夠去解析數(shù)據(jù)并刷新頁(yè)面,將結(jié)果顯示給用戶,這樣的結(jié)構(gòu)給用戶帶來(lái)的體驗(yàn)是極其不好的,因?yàn)閿?shù)據(jù)量一旦很大的話,時(shí)間就會(huì)很長(zhǎng),因?yàn)槭峭耆惒降慕Y(jié)構(gòu),頁(yè)面會(huì)堵塞,所以無(wú)法提升刷新效率。Ajax腳本被引進(jìn)來(lái)解決部分網(wǎng)頁(yè)元素獲取的問(wèn)題,由于服務(wù)器產(chǎn)生新數(shù)據(jù)這個(gè)事件也是實(shí)時(shí)發(fā)生的,所以如果Ajax腳本要實(shí)時(shí)獲取數(shù)據(jù)就只能依靠輪詢這種操作,盡量減少其間隔時(shí)間,但是時(shí)間間隔的縮短又會(huì)帶來(lái)帶寬的大量浪費(fèi),這對(duì)于用戶來(lái)講是不可接受的,而頻繁的建立和鍛煉網(wǎng)絡(luò)連接也會(huì)導(dǎo)致系統(tǒng)負(fù)載上升和性能下降。因此,推送技術(shù)被提出。
采用推送技術(shù)的Web應(yīng)用模型,稱之為Comet框架,在這種框架的設(shè)計(jì)下,網(wǎng)絡(luò)請(qǐng)求會(huì)被在發(fā)送至服務(wù)器的同時(shí)保存下來(lái),并保持一個(gè)很長(zhǎng)的生存期[2],它通過(guò)服務(wù)器的延時(shí)并將更新數(shù)據(jù)以流的方式發(fā)送給瀏覽器或者客戶端,這樣采用服務(wù)器主動(dòng)的方式引入到Ajax框架中,Web服務(wù)器可以在沒(méi)有網(wǎng)絡(luò)請(qǐng)求的情況下,找到需要獲取數(shù)據(jù)的客戶端或?yàn)g覽器,并向其傳送數(shù)據(jù),而客戶端接收到數(shù)據(jù)的同時(shí),由腳本或者后臺(tái)程序處理,直接呈現(xiàn)給用戶,這樣,數(shù)據(jù)的傳送和顯示完全是異步的,只要服務(wù)器一直保有網(wǎng)絡(luò)連接,就能夠一直向客戶端推送數(shù)據(jù),并使其進(jìn)行相應(yīng)的操作,而且能夠適應(yīng)任意高低的頻率達(dá)到時(shí)延小冰球帶寬占用少的目的,讓客戶端或?yàn)g覽器達(dá)到真正意義上的實(shí)時(shí)刷新。按照實(shí)現(xiàn)的方法,可以將Comet的實(shí)現(xiàn)方法分為2大類:使用HTTP流和使用長(zhǎng)輪詢技術(shù)的。
(1)使用HTTP流實(shí)現(xiàn)的Comet
使用HTTP流模式的方式,會(huì)存在一個(gè)具有持久性連接的請(qǐng)求,而對(duì)于所有到達(dá)服務(wù)器的事件,都會(huì)通過(guò)這個(gè)連接來(lái)進(jìn)行發(fā)送。因此只要將這個(gè)連接和其他的不同回應(yīng)分開(kāi)就行,從技術(shù)來(lái)講,常見(jiàn)的2種流技術(shù)包括Forever Iframe,或者被用來(lái)在JavaScript中創(chuàng)建Ajax腳本請(qǐng)求的XMLHttpRequest對(duì)象。Forever Iframe方式是由一個(gè)放在頁(yè)面中隱藏的Iframe標(biāo)簽來(lái)完成,這個(gè)標(biāo)簽可以指向服務(wù)器端的網(wǎng)絡(luò)服務(wù)端口,每次有事件出現(xiàn)的時(shí)候端口就會(huì)寫(xiě)入并給出一個(gè)新的腳本標(biāo)簽,而標(biāo)簽的內(nèi)部就攜帶有腳本代碼,Iframe中的內(nèi)容就會(huì)被這些腳本代碼來(lái)進(jìn)行更新[3]。這種技術(shù)實(shí)現(xiàn)起來(lái)較為簡(jiǎn)單,并且使用范圍廣,只需瀏覽器支持Iframe標(biāo)簽,其缺點(diǎn)是沒(méi)有跟蹤網(wǎng)絡(luò)連接狀態(tài)和錯(cuò)誤處理的機(jī)制。
第二種技術(shù)相對(duì)第一種要可靠一些,是采用XMLHttpRequest對(duì)象為依托,使用Ajax腳本來(lái)發(fā)送會(huì)話,并使服務(wù)器保持打開(kāi),一旦服務(wù)器端有事件時(shí),就立即通過(guò)這一連接來(lái)進(jìn)行數(shù)據(jù)發(fā)送,由頁(yè)面的XMLHttpRequest來(lái)進(jìn)行應(yīng)答,服務(wù)器端的處理要復(fù)雜一些,要設(shè)置多請(qǐng)求以及掛起連接的方法,并且能夠高效地找到掛起的某個(gè)連接,向其中寫(xiě)入數(shù)據(jù)。這種方式的優(yōu)點(diǎn)是只要在瀏覽器和服務(wù)器之間帶開(kāi)一個(gè)連接,而缺點(diǎn)是不一定所有瀏覽器都支持。
(2)使用長(zhǎng)輪詢技術(shù)實(shí)現(xiàn)的Comet
使用長(zhǎng)輪詢模式來(lái)實(shí)現(xiàn)Comet框架,比較推薦的做法是使用Ajax腳本作為客戶端請(qǐng)求發(fā)起者,這樣做的優(yōu)點(diǎn)是客戶端比較容易實(shí)現(xiàn)錯(cuò)誤處理以及超時(shí)管理,能夠找到和服務(wù)器之間的連接,也能夠干涉連接。這種技術(shù)還允許服務(wù)器和客戶端之間的連接存在往返,即便連接不上持久的。它能夠應(yīng)用在幾乎所有瀏覽器上,需要做的就是確保所使用用到的XMLHttpRequest對(duì)象能夠發(fā)送簡(jiǎn)單的腳本請(qǐng)求就可以了。實(shí)現(xiàn)上,由XMLHttpRequest對(duì)象打開(kāi)一個(gè)到服務(wù)器的網(wǎng)絡(luò)請(qǐng)求并等待響應(yīng),而服務(wù)器需要提供一些特定的服務(wù)允許請(qǐng)求掛起等待,一旦服務(wù)器產(chǎn)生了需要返回客戶端的新數(shù)據(jù),服務(wù)器就會(huì)從掛起的請(qǐng)求中找出對(duì)應(yīng)客戶端的連接并送回響應(yīng)數(shù)據(jù),當(dāng)請(qǐng)求超時(shí)后關(guān)閉此連接,就像關(guān)閉了網(wǎng)絡(luò)端口響應(yīng)的輸出流一樣,然后客戶端會(huì)重新打開(kāi)一個(gè)新的長(zhǎng)生存期網(wǎng)絡(luò)請(qǐng)求重復(fù)這一過(guò)程。但其缺點(diǎn)是,這樣依然依賴于無(wú)狀態(tài)的HTTP連接,要求服務(wù)器端有特殊的服務(wù)來(lái)臨時(shí)掛起連接。
5.1 系統(tǒng)通訊模型
以下將以某系統(tǒng)設(shè)計(jì)為案例對(duì)推送技術(shù)的具體應(yīng)用方法進(jìn)行說(shuō)明概括,系統(tǒng)的架構(gòu)采用C/S和B/S相結(jié)合的方式,設(shè)計(jì)上按照物理分層為3個(gè)部分,分別為服務(wù)器端、客戶端和通訊層。
服務(wù)器端采用現(xiàn)行服務(wù)器,并且使用線程池和對(duì)象池進(jìn)行配置,客戶端的請(qǐng)求每發(fā)生一次就從服務(wù)器線程池中借用一個(gè)線程,事件處理完畢這個(gè)請(qǐng)求就將線程返回給線程池。同樣的,使用線程快速的訪問(wèn)對(duì)象,對(duì)象也是從對(duì)象池中借用,用完就返回對(duì)象池,這樣就很大程度節(jié)約服務(wù)器的性能開(kāi)銷。服務(wù)器和客戶端的通訊狀況如圖1所示。
圖1 服務(wù)器和客戶端的通訊狀況示意圖
5.2 系統(tǒng)通訊過(guò)程
如圖1中所示,由Servlet提供請(qǐng)求、響應(yīng)模式的網(wǎng)絡(luò)服務(wù)接口,它能夠動(dòng)態(tài)的擴(kuò)展容器服務(wù)器的能力,請(qǐng)求響應(yīng)過(guò)程可以概括為:①客戶端發(fā)送網(wǎng)絡(luò)請(qǐng)求至服務(wù)器;于服務(wù)器將請(qǐng)求內(nèi)容按格式轉(zhuǎn)交給Servlet進(jìn)行邏輯處理;③Servlet接口生成響應(yīng)消息并將其傳給服務(wù)器;④服務(wù)器將響應(yīng)數(shù)據(jù)返回客戶端。
一個(gè)網(wǎng)絡(luò)端口被客戶端發(fā)送來(lái)的第一個(gè)請(qǐng)求激活,然后它將繼續(xù)運(yùn)行于后臺(tái),等待以后的請(qǐng)求,每個(gè)請(qǐng)求會(huì)生成一個(gè)新的線程,而不是一個(gè)完整的進(jìn)程,而Comet內(nèi)核使用Servlet作為對(duì)外交互的接口。
5.3 Comet實(shí)現(xiàn)流程
首先,建立網(wǎng)絡(luò)服務(wù)接口,并使此網(wǎng)絡(luò)服務(wù)接口實(shí)現(xiàn)服務(wù)器提供的Comet管理接口,Comet管理接口完成了允許網(wǎng)絡(luò)服務(wù)器接收了網(wǎng)絡(luò)請(qǐng)求并執(zhí)行完畢后卻不被回收,服務(wù)器建立對(duì)于當(dāng)前網(wǎng)絡(luò)請(qǐng)求的引用,這樣當(dāng)產(chǎn)生事件時(shí)找到引用并發(fā)送數(shù)據(jù)。網(wǎng)絡(luò)服務(wù)接口必須實(shí)現(xiàn)的方法包含event(),參數(shù)就是Comet事件,這個(gè)事件分別具有begin()、read()、error()、和end()四個(gè)狀態(tài),在begin()和error()或者end()之間,在網(wǎng)絡(luò)服務(wù)端口中能夠按常規(guī)方式引用網(wǎng)絡(luò)請(qǐng)求以及響應(yīng)對(duì)象,所以只需要在這些方法中將網(wǎng)絡(luò)響應(yīng)對(duì)象有效的管理起來(lái),就能夠達(dá)到管理網(wǎng)絡(luò)長(zhǎng)連接的目的。
其次,在網(wǎng)絡(luò)服務(wù)接口的方法中增加對(duì)網(wǎng)絡(luò)請(qǐng)求和響應(yīng)對(duì)象的處理,并添加相應(yīng)的觸發(fā)處理方法。開(kāi)發(fā)服務(wù)器端應(yīng)用的數(shù)據(jù)處理流程,具體流程和業(yè)務(wù)相關(guān),并在Comet事件的幾個(gè)狀態(tài)中添加相應(yīng)的處理邏輯。
最后,軟件的客戶端菜啊用推送的實(shí)現(xiàn)技術(shù),在原有軟件的頁(yè)面部分添加腳本,由腳本來(lái)完成網(wǎng)絡(luò)連接的發(fā)起以及數(shù)據(jù)的接收和頁(yè)面的內(nèi)容修改動(dòng)作。瀏覽器的內(nèi)置對(duì)象能夠監(jiān)測(cè)當(dāng)前網(wǎng)絡(luò)請(qǐng)求的狀態(tài),當(dāng)請(qǐng)求的狀態(tài)處于數(shù)據(jù)接收過(guò)程時(shí),可以調(diào)用頁(yè)面元素修改函數(shù)來(lái)進(jìn)行內(nèi)容的變動(dòng),當(dāng)請(qǐng)求斷開(kāi)時(shí),一定時(shí)間內(nèi)再次發(fā)起連接等。
5.4 長(zhǎng)連接的管理
由于推送技術(shù)需要保管所有來(lái)自客戶端的網(wǎng)絡(luò)請(qǐng)求,此時(shí)就對(duì)服務(wù)器端對(duì)這種長(zhǎng)連接的管理提出了較高的要求,其中,需要進(jìn)行管理的長(zhǎng)連接類型包括:設(shè)備客戶端的長(zhǎng)連接和頁(yè)面端的長(zhǎng)連接,并且要對(duì)這些連接的快速查找和數(shù)據(jù)發(fā)送異常進(jìn)行高效的處理。
為了能夠高效地確定客戶端連接,可以采用哈希表管理的方法,為哈希表設(shè)置空間長(zhǎng)度以及哈希表的自動(dòng)擴(kuò)容[4],連接的管理交由專門(mén)的連接管理器進(jìn)行,連接管理器主要實(shí)現(xiàn)了3個(gè)方法:①網(wǎng)絡(luò)連接的添加,也就是當(dāng)客戶端有新的網(wǎng)絡(luò)請(qǐng)求時(shí),對(duì)此網(wǎng)絡(luò)請(qǐng)求進(jìn)行唯一性標(biāo)識(shí),并存儲(chǔ)其句柄;于網(wǎng)絡(luò)連接的刪除,也就是當(dāng)數(shù)據(jù)的傳送出現(xiàn)異?;蛘咤e(cuò)誤的狀況時(shí)刪除對(duì)應(yīng)的網(wǎng)絡(luò)請(qǐng)求的句柄;③網(wǎng)絡(luò)連接的高效查詢,也就是當(dāng)服務(wù)器有新的數(shù)據(jù)需要進(jìn)行推送時(shí),要根據(jù)篩選條件快速找到需要數(shù)據(jù)的網(wǎng)絡(luò)請(qǐng)求的句柄。而當(dāng)服務(wù)器給客戶端發(fā)送消息時(shí),需要對(duì)消息進(jìn)行一系列的邏輯操作,這就需要服務(wù)器有一套完整的消息處理策略,由于客戶端不確定是無(wú)線或者有線網(wǎng)絡(luò),數(shù)據(jù)就會(huì)存在極大的不穩(wěn)定性,可能因?yàn)楦鞣N原因無(wú)法到達(dá)目的地,這時(shí)就會(huì)調(diào)動(dòng)服務(wù)器的異常處理機(jī)制。
采用推送技術(shù)最大的問(wèn)題就在于服務(wù)器的負(fù)載能力,對(duì)于相同的客戶端可以限制其最大網(wǎng)絡(luò)訪問(wèn)數(shù)量,但是不同的客戶端要保持多個(gè)長(zhǎng)連接,就要對(duì)每個(gè)客戶端打開(kāi)一個(gè)TCP端口來(lái)保持持續(xù)請(qǐng)求不能釋放,這就對(duì)服務(wù)器的性能提出了很高的要求[5],服務(wù)器可能會(huì)因?yàn)樽陨韮?nèi)存或者其他問(wèn)題導(dǎo)致端口數(shù)量打開(kāi)過(guò)多無(wú)法關(guān)閉而出現(xiàn)內(nèi)存泄露等異常。對(duì)于長(zhǎng)連接的管理,可以在WEB容器段設(shè)置網(wǎng)絡(luò)連接訪問(wèn)的時(shí)間,當(dāng)時(shí)間超過(guò)某個(gè)界定值時(shí),就自動(dòng)對(duì)其關(guān)閉。但這樣帶來(lái)的問(wèn)題也顯而易見(jiàn),如果時(shí)間太短,就不能達(dá)到使用長(zhǎng)連接的目的,而如果太長(zhǎng),則容易導(dǎo)致空閑連接的大量存在,所以需要在時(shí)間和數(shù)量之間取得一個(gè)平衡點(diǎn)。對(duì)于Web容器本身,其性能的提高是非常有限的,所以可以考慮用其他專門(mén)做網(wǎng)絡(luò)連接處理的服務(wù)器作為Web容器的前端,采用負(fù)載均衡的技術(shù)分流網(wǎng)絡(luò)請(qǐng)求,達(dá)到提高服務(wù)器性能的目的[6]。
本文詳細(xì)介紹了推送技術(shù)以及在應(yīng)用中推送技術(shù)框架的實(shí)現(xiàn)方法。推送技術(shù)的應(yīng)用在信息獲取方式領(lǐng)域是一次革命,它改變了傳統(tǒng)的獲取方式,使應(yīng)用系統(tǒng)具有更好的主動(dòng)性以及更高的工作效率[6],隨著更多企業(yè)應(yīng)用系統(tǒng)信息化進(jìn)程的加快,推送技術(shù)也必將得到更多有效的應(yīng)用。
[1]姜毅,王兆青,曹麗.基于HTTP的實(shí)時(shí)信息傳輸方法[J].計(jì)算機(jī)工程與設(shè)計(jì),2008,29(10):2451-2454.
[2]李慶誠(chéng),商盛立.手持閱讀終端電子資源Push系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)工程與設(shè)計(jì),2009,30(6):1483-1490.
[3]曾維宇,陳鐵軍,孟麗.基于Push技術(shù)的主動(dòng)信息服務(wù)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)工程與設(shè)計(jì),2005,26(11): 2893-2894,2933.
[4]錢宇虹.淺析Comet技術(shù)在Java Web實(shí)時(shí)系統(tǒng)開(kāi)發(fā)中的應(yīng)用[J].軟件工程師,2010(4):45-47.
[5]尤淑輝,唐文彬,郭梅.基于Pushlet的網(wǎng)絡(luò)性能實(shí)時(shí)監(jiān)控系統(tǒng)[J].計(jì)算機(jī)工程與設(shè)計(jì),2008,23(4):387-388,391.
[6]周順.面向Web Service的動(dòng)態(tài)負(fù)載均衡設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)工程與科學(xué).2010,32(12):152-156.
Design and Implementation of Network Service Based on Dynamic Push Technology
GONG Xing-xing1WANG Ao2
(1 The 54th Research Institute of CETC,Shijiazhuang Hebei 050081,China)
(2 Yun Nan University,Kunming Yunnan 650031,China)
With the progress of the times,more and more people are accustomed to using mobile or table PC to handle the official business and communicate with each other.A large number of software used in various mobile devices is appeared in worldwide,but with the improvement of user real-time requirements of data acquisition,the ordinary artificial refreshing mode cannot meet user requirements.The push mode can solve this problem,which holds the network connections through the server and the client to acquire the update data in real time.Aiming at the characteristics of push technology,this paper describes the devision of network service based on dynamic push,designs and implements a set of service architecture.
intelligent handheld device;real-time;network service;push technologyse
TP311
A
1008-1739(2014)20-63-4
定稿日期:2014-09-26