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

?

基于Ajax的城市公眾服務(wù)系統(tǒng)實(shí)現(xiàn)

2012-09-28 01:19:02羅躍軍
測(cè)繪通報(bào) 2012年9期
關(guān)鍵詞:空間信息瓦片服務(wù)器端

鄭 莉,羅躍軍

(1.武漢大學(xué)測(cè)繪學(xué)院,湖北武漢430079;2.光庭導(dǎo)航數(shù)據(jù)(武漢)有限公司,湖北武漢430073)

基于Ajax的城市公眾服務(wù)系統(tǒng)實(shí)現(xiàn)

鄭 莉1,羅躍軍2

(1.武漢大學(xué)測(cè)繪學(xué)院,湖北武漢430079;2.光庭導(dǎo)航數(shù)據(jù)(武漢)有限公司,湖北武漢430073)

為提高公共服務(wù)平臺(tái)空間信息資源共享的服務(wù)效率和能力,針對(duì)當(dāng)前應(yīng)用廣泛的瓦片式地圖服務(wù)模式,探討基于Ajax的瓦片式地圖服務(wù)研究,開(kāi)發(fā)對(duì)應(yīng)的瓦片式切圖工具,為空間信息資源共享提供數(shù)據(jù)保障。試驗(yàn)結(jié)果表明,該系統(tǒng)具有很高的瓦片切圖效率,對(duì)提高傳統(tǒng)WebGIS的響應(yīng)速度具有較高的應(yīng)用價(jià)值。

瓦片地圖;切割;合成;Ajax;公眾服務(wù)系統(tǒng)

一、引 言

隨著城市建設(shè)的快速發(fā)展,城市中的各類信息資源也越來(lái)越多,各種信息資源與空間地理位置的聯(lián)系也越來(lái)越緊密,如何將城市中各行各業(yè),種類繁多的信息資源與空間信息進(jìn)行分類與整合,從而依托地理空間位置信息實(shí)現(xiàn)對(duì)信息資源的共享服務(wù)[1-2],這已經(jīng)成為城市信息化建設(shè)中急需解決的問(wèn)題。建設(shè)地理信息公眾服務(wù)平臺(tái),利用當(dāng)前互聯(lián)網(wǎng)環(huán)境,整合相關(guān)信息資源,面向公眾提供地理信息服務(wù),不僅可以降低地理信息應(yīng)用的成本門檻,滿足公眾對(duì)地理信息資源使用的需求,而且可以更好地利用測(cè)繪成果為社會(huì)服務(wù)。傳統(tǒng)的WebGIS服務(wù)模式可以達(dá)到地理空間信息資源共享的目標(biāo),它可以實(shí)時(shí)請(qǐng)求地圖服務(wù)器傳輸?shù)貓D,但該模式消耗資源(如網(wǎng)絡(luò)負(fù)載、服務(wù)器負(fù)載等)相對(duì)比較大,因此,不能滿足多用戶、高并發(fā)的地理空間信息資源共享服務(wù)效率的要求。瓦片式地圖服務(wù)模式首先把空間信息數(shù)據(jù)按照特定的瓦片式切圖算法生成規(guī)矩的瓦片式地圖存儲(chǔ)于硬盤目錄下,然后以鏈接圖片的方式在瀏覽器中還原地圖[3]。該服務(wù)模式響應(yīng)速度要快于傳統(tǒng)WebGIS服務(wù)模式,而且對(duì)地圖服務(wù)器的負(fù)載也相對(duì)小一些。本文就是針對(duì)當(dāng)前應(yīng)用廣泛的瓦片式地圖服務(wù)模式,探討基于Ajax的瓦片式地圖服務(wù)研究,開(kāi)發(fā)對(duì)應(yīng)的瓦片式切圖工具,為空間信息資源共享提供數(shù)據(jù)保障。

二、瓦片地圖服務(wù)的體系結(jié)構(gòu)

瓦片式地圖可分為兩種:一種是客戶端瓦片技術(shù),即在客戶端將本來(lái)只需一次請(qǐng)求即可獲得的地圖圖片分解為多次請(qǐng)求,由客戶端將這多次請(qǐng)求獲得的地圖圖片組合起來(lái),形成一幅完整的地圖,但它對(duì)WebGIS服務(wù)器和網(wǎng)絡(luò)的荷載要求非常大;另一種是服務(wù)器端的瓦片技術(shù),即預(yù)先在服務(wù)器上切割出金字塔結(jié)構(gòu)的地圖圖片,讓客戶端來(lái)訪問(wèn),這種方式不涉及WebGIS服務(wù)器的解析和地圖生成過(guò)程,而是一個(gè)存儲(chǔ)的圖像加載,因此速度比客戶端瓦片技術(shù)和非瓦片式GIS快[4]。本研究是基于服務(wù)器端的瓦片技術(shù),系統(tǒng)采用B/S架構(gòu)進(jìn)行設(shè)計(jì)開(kāi)發(fā),GIS數(shù)據(jù)處理平臺(tái)采用MapInfo 8.5,后臺(tái)數(shù)據(jù)庫(kù)使用Oracle、MySQL6以及自定義數(shù)據(jù)庫(kù)。系統(tǒng)采用的開(kāi)發(fā)工具是 Microsoft Visual Studio.NET 2008、php5,以及Flex3等。平臺(tái)服務(wù)器環(huán)境為Red Linux Advance Server 5或者Windows Server 2003。應(yīng)用平臺(tái)系統(tǒng)是自主開(kāi)發(fā)的JavaScript地圖組件、ArcGIS Server 9.3以及Flash地圖組件等。瓦片地圖服務(wù)采用多層體系結(jié)構(gòu)設(shè)計(jì),系統(tǒng)由用戶層、瓦片地圖服務(wù)中間件和數(shù)據(jù)層構(gòu)成,以增加應(yīng)用系統(tǒng)的可伸縮性和靈活性。

三、瓦片切圖工具設(shè)計(jì)

1.瓦片地圖預(yù)先生成

本系統(tǒng)運(yùn)用Ajax技術(shù),客戶端與服務(wù)器可以進(jìn)行異步多線程數(shù)據(jù)交互,在地圖服務(wù)中以分塊傳輸?shù)貓D。將瀏覽器地圖容器分割成尺寸相等(一般為256像素×256像素大小)的若干正方形地圖方塊,并根據(jù)客戶的操作,先從緩存中搜索相應(yīng)的地圖數(shù)據(jù),如果緩存中沒(méi)有對(duì)應(yīng)的地圖數(shù)據(jù),Ajax引擎會(huì)根據(jù)一定的算法計(jì)算出需要新加載的瓦片,以異步多線程方式向服務(wù)器發(fā)出請(qǐng)求。在用戶操作時(shí)候,使用JavaScript和DHTML立即更新地圖信息,并向服務(wù)器發(fā)出異步請(qǐng)求,以執(zhí)行更新或查詢緩存與數(shù)據(jù)庫(kù)。當(dāng)請(qǐng)求返回時(shí),就可以使用JavaScript和CSS來(lái)相應(yīng)地更新頁(yè)面,而不是刷新整個(gè)頁(yè)面。地圖分塊技術(shù)極大地改進(jìn)了客戶端和服務(wù)器端的交互效率,減輕了服務(wù)器負(fù)載和網(wǎng)絡(luò)傳輸負(fù)擔(dān)。

地圖緩存模塊用于存儲(chǔ)地圖數(shù)據(jù),提高系統(tǒng)的效率,降低反應(yīng)時(shí)間。當(dāng)用戶訪問(wèn)地圖的某一區(qū)域時(shí)候,系統(tǒng)將會(huì)讀取該區(qū)域臨近區(qū)域的數(shù)據(jù),儲(chǔ)存在緩存中,方便用戶查詢。而用戶查詢的時(shí)候,系統(tǒng)會(huì)先從緩存中讀取,如果不能命中,系統(tǒng)會(huì)向數(shù)據(jù)庫(kù)查詢模塊發(fā)送請(qǐng)求,查詢地圖數(shù)據(jù)。當(dāng)用戶在操作地圖的同時(shí),系統(tǒng)會(huì)自動(dòng)從后臺(tái)的服務(wù)器中讀取數(shù)據(jù),存儲(chǔ)到緩存中,此時(shí)用戶還根本沒(méi)有意識(shí)到瀏覽器正在與服務(wù)器通信。而用戶訪問(wèn)其他區(qū)域的時(shí)候,訪問(wèn)就會(huì)變得非常流暢[5]。本系統(tǒng)采取LRU(least recently used)算法來(lái)動(dòng)態(tài)置換緩存中的內(nèi)容。LRU算法原理局部性原理是:在前面一系列操作中使用頻繁的區(qū)域很可能在后面的操作中頻繁使用。反過(guò)來(lái)說(shuō),已經(jīng)很久沒(méi)有使用的區(qū)域很可能在未來(lái)較長(zhǎng)的一段時(shí)間內(nèi)不會(huì)被用到,所以在每次調(diào)換時(shí),找到最近最少使用的那個(gè)區(qū)域并調(diào)出內(nèi)存。

2.地圖切割與合成

地圖瓦片可由矢量地圖或柵格地圖切割而成。地圖切割程序根據(jù)投影類型、地理坐標(biāo)、縮放級(jí)別、地圖瓦片像素大小等參數(shù)生成柵格形式的地圖瓦片,并用縮放級(jí)別、x坐標(biāo)和y坐標(biāo)等標(biāo)識(shí)為圖片命名。圖1為圖片裁切具體流程,先將圖片加載進(jìn)來(lái),在裁切時(shí),需要明確產(chǎn)生Cells數(shù)組的大小以及影像對(duì)象,并告知影像中每個(gè)圖片的大小,則圖片會(huì)自動(dòng)初切割成等尺寸的畫面(Tile);然后將處理后的圖片寫入到目錄中。網(wǎng)站在使用這些圖片時(shí),會(huì)根據(jù)圖片裁切原理,通過(guò)工具組合還原成需要的圖片,并顯示在網(wǎng)站的頁(yè)面中。不過(guò)當(dāng)影像數(shù)據(jù)很大時(shí),需要考慮建立文件索引,但這會(huì)引起性能下降。建議將裁切工具作為單獨(dú)工具,而不進(jìn)行實(shí)時(shí)切片。

地圖的合成由Ajax引擎在客戶端完成。Ajax引擎首先分析瀏覽器地圖容器中的當(dāng)前縮放級(jí)別、地理坐標(biāo)和容器大小等參數(shù),計(jì)算出需要哪些地圖瓦片;然后異步并發(fā)地向服務(wù)器發(fā)出請(qǐng)求,當(dāng)?shù)貓D瓦片返回后,將其放到瀏覽器地圖容器中的正確位置上。各相鄰地圖瓦片均無(wú)縫隙,所有瓦片合成后在用戶眼里是一整塊地圖,圖2為圖片合成具體流程。

圖1 圖片裁切流程

圖2 圖片組合顯示流程

四、地圖搜索技術(shù)優(yōu)化

1.地圖搜索

所謂地圖搜索,就是用戶在地圖搜索引擎界面下,輸入想要查找地點(diǎn)的關(guān)鍵字,便可在地圖窗口中定位整個(gè)城市范圍內(nèi)想要查找的街道、建筑物等地理位置,并獲得相關(guān)地圖信息[6]。城市公眾服務(wù)系統(tǒng)擁有精準(zhǔn)而充實(shí)的地理信息庫(kù),最新的興趣點(diǎn)(POI)信息,擁有高性能的搜索技術(shù),在為用戶提供精準(zhǔn)搜索的同時(shí),具有優(yōu)良的搜索反應(yīng)速度。

地圖搜索(如圖3所示)實(shí)現(xiàn)具體流程如下:①在Web瀏覽器的地圖搜索界面下,用戶選擇“區(qū)縣列表”中的區(qū)縣(默認(rèn)為城市),并且輸入欲搜索的街道、商業(yè)建筑等興趣點(diǎn)的關(guān)鍵字,點(diǎn)擊搜索按鈕;②客戶端通過(guò)JavaScript腳本,獲得用戶想要搜索信息的“區(qū)縣”、“關(guān)鍵字”等搜索條件,建立與服務(wù)器端的連接,向服務(wù)器端發(fā)送請(qǐng)求(以“Get”方式向服務(wù)器發(fā)送請(qǐng)求);③Web服務(wù)器接收客戶端的請(qǐng)求,分析搜索條件,確定用戶激發(fā)的搜索類別,繼而確定具體的搜索引擎;④建立與數(shù)據(jù)庫(kù)服務(wù)器的連接,根據(jù)不同的搜索引擎,在數(shù)據(jù)庫(kù)服務(wù)器上搜索滿足要求的信息;⑤Web服務(wù)器向客戶端返回搜索結(jié)果(以XML文件返回結(jié)果);⑥在Web瀏覽器的地圖搜索界面下輸出搜索結(jié)果列表(POI名稱、地址、詳細(xì)信息鏈接),如果搜索的是街道,則在地圖顯示窗口中畫出街道中心線;如果搜索的是興趣點(diǎn),則在地圖顯示窗口中以字母或數(shù)字標(biāo)出搜索到的興趣點(diǎn)地理位置。

圖3 地圖搜索流程

地圖搜索模塊中采用了Ajax技術(shù),目的是增強(qiáng)地圖搜索界面的互動(dòng)性,使地圖搜索程序可以像桌面應(yīng)用程序中常見(jiàn)的動(dòng)態(tài)用戶界面和漂亮的控件一樣,并減少客戶端從服務(wù)器端請(qǐng)求少量信息,而不是整個(gè)網(wǎng)頁(yè),增加頁(yè)面的數(shù)據(jù)更新但同時(shí)減少頁(yè)面的刷新和刷新等待,減輕空間服務(wù)器的同時(shí)改善用戶體驗(yàn)??蛻舳耸墙柚贏jax技術(shù),利用JavaS-cript語(yǔ)言,實(shí)現(xiàn)與服務(wù)器端的異步數(shù)據(jù)請(qǐng)求,保證用戶無(wú)需等待服務(wù)器端的響應(yīng)而繼續(xù)進(jìn)行其他操作。

2.周邊搜索

周邊搜索顧名思義就是在哪里找什么,也就是查詢或搜索以某一位置為中心的周邊感興趣的信息。輸入地理信息名(指搜索中心地址、地標(biāo)建筑物、POI名稱或是行政區(qū)劃名稱),以及中心位置周圍的生活信息關(guān)鍵詞,如餐館、KTV、銀行、藥店等,點(diǎn)擊搜索按鈕后,即可獲得中心位置周圍POI列表。還可設(shè)置搜索半徑,即用戶進(jìn)行周邊搜索的時(shí)候,可根據(jù)自己的需要更改搜索半徑的大小。

周邊搜索具體實(shí)現(xiàn)流程如下:①在Web瀏覽器的周邊搜索界面下,用戶首先在中心位置欄中輸入中心地址、地標(biāo)建筑物名稱或行政區(qū)劃等地理信息名稱,并同時(shí)周圍信息欄中輸入信息點(diǎn)關(guān)鍵詞,然后點(diǎn)擊搜索按鈕;②客戶端通過(guò)JavaScript腳本,獲得用戶想要搜索信息的“地理信息名稱”、“周圍信息的關(guān)鍵詞”等搜索條件,建立與服務(wù)器端的連接,向服務(wù)器端發(fā)送請(qǐng)求(以“Get”方式向服務(wù)器發(fā)送請(qǐng)求);③Web服務(wù)器接收客戶端的請(qǐng)求,分析地理信息名稱,如果是行政區(qū)劃名稱,則以該區(qū)劃中心為圓心,以指定的半徑為搜索半徑,進(jìn)行信息點(diǎn)的搜索;如果是地標(biāo)建筑物等名稱,則以該地標(biāo)點(diǎn)為圓心,以指定的半徑為搜索半徑,進(jìn)行信息點(diǎn)的搜索;④建立與數(shù)據(jù)庫(kù)服務(wù)器的連接,根據(jù)周邊搜索的搜索引擎,在數(shù)據(jù)庫(kù)服務(wù)器上搜索符合條件的興趣點(diǎn);⑤Web服務(wù)器向客戶端返回XML文件形式的搜索結(jié)果;⑥ 在Web瀏覽器的周邊搜索界面下列出搜索結(jié)果(POI名稱、地址、詳細(xì)信息鏈接),并在地圖顯示窗口中以字母或數(shù)字標(biāo)出搜索到的興趣點(diǎn)地理位置。周邊搜索模塊實(shí)現(xiàn)所采用的技術(shù)與地圖搜索一樣。流程可參照?qǐng)D3所示。

五、系統(tǒng)性能與實(shí)現(xiàn)

1.系統(tǒng)性能

為了測(cè)試本系統(tǒng)的實(shí)際性能,對(duì)系統(tǒng)的響應(yīng)時(shí)間進(jìn)行了測(cè)試。在Windows XP平臺(tái)下搭建試驗(yàn)環(huán)境,測(cè)試使用的服務(wù)器是一臺(tái)IBM的PC級(jí)服務(wù)器,配置為Intel 2.8 GHz雙核處理器和4 GB內(nèi)存。在客戶計(jì)算機(jī)上運(yùn)行專門開(kāi)發(fā)的測(cè)試程序,模擬單個(gè)用戶的平移、縮放和快速定位操作,用戶動(dòng)作間隔設(shè)定為1 s。測(cè)試程序記錄每次動(dòng)作的開(kāi)始時(shí)間和完成時(shí)間,進(jìn)而計(jì)算得到每個(gè)動(dòng)作的等待時(shí)間。為了提高測(cè)試結(jié)果可信度,每次測(cè)試設(shè)定用戶分別進(jìn)行3000次平移、縮放以及快速定位操作,測(cè)試結(jié)果如表1所示。從表1可以看出,平移操作的響應(yīng)時(shí)間大約只有原來(lái)的1/5,縮放操作的響應(yīng)時(shí)間大約是原來(lái)的1/4,快速定位的響應(yīng)時(shí)間大約是原來(lái)的1/2,系統(tǒng)性能得到了較大的提升。

2.系統(tǒng)實(shí)現(xiàn)

圖5是興趣點(diǎn)搜索顯示,將查詢結(jié)果在客戶端瀏覽器中以列表的形式顯示,同時(shí)還將結(jié)果的位置在地圖窗口中標(biāo)注。在查看一個(gè)結(jié)果的詳細(xì)信息時(shí),并在地圖窗口中把當(dāng)前查看結(jié)果的位置在地圖窗口中居中顯示。在本系統(tǒng)中周邊搜索功能主要是指用戶在確定一個(gè)位置后和一個(gè)距離范圍后,可以查找位于這個(gè)范圍內(nèi)的服務(wù)提供商信息和服務(wù)信息,用戶界面如圖6所示。

表1 操作等待時(shí)間 ms

圖5 興趣點(diǎn)搜索

六、結(jié)束語(yǔ)

針對(duì)目前公眾對(duì)地理信息系統(tǒng)應(yīng)用的迫切需求,本文設(shè)計(jì)開(kāi)發(fā)的城市公眾服務(wù)系統(tǒng),整合了多尺度、多時(shí)相、多源、多分辨率空間信息,采用金字塔空間結(jié)構(gòu)來(lái)對(duì)地圖數(shù)據(jù)進(jìn)行組織,對(duì)客戶端請(qǐng)求的地圖數(shù)據(jù)進(jìn)行合理的分割與傳輸,并通過(guò)減少網(wǎng)絡(luò)傳輸?shù)臄?shù)據(jù)量來(lái)加快客戶端顯示效果,快速展示電子地圖,建立了一種高效的面向用戶提供地圖服務(wù)的技術(shù)解決方案運(yùn)行機(jī)制,從而實(shí)現(xiàn)了面向社會(huì)公眾的空間地理信息服務(wù),提高了公眾對(duì)地理空間信息作用的認(rèn)知度,促進(jìn)了地理空間信息向?qū)嵱没⒁?guī)范化、公開(kāi)化、產(chǎn)業(yè)化方向的發(fā)展。

[1] YANG C W,DAVID W W,YANG R X,et al.Performance Improving Techniques in Web-based GIS[J].International Journal of Geographical Information Science,2005,19(3):319-342.

[2] KHARE R.Beyond Ajax:Accelerating Web Applications with Real-Time Event Notification[D].Netherlands:Delft University of Technology,2005.

[3] 錢志彬,趙衛(wèi)東.輕量級(jí)WebGIS中間件的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)工程,2006,32(23):265-267.

[4] MENNO K J.The Role of the Map in a WebGIS Environment[J].Journal of Geographical Systems,2004,6(2):83-93.

[5] 王浩,喻占武,曾武,等.基于瓦片壽命和訪問(wèn)熱度的海量空間數(shù)據(jù)緩存置換策略[J].武漢大學(xué)學(xué)報(bào):信息科學(xué)版,2009,34(6):667-670.

[6] 涂振發(fā),喻光明,張純潔.基于Ajax和MapX的Web-GIS的體系及其實(shí)現(xiàn)[J].華中師范大學(xué)學(xué)報(bào):自然科學(xué)版,2008,42(1):136-140.

Implementation of Urban Public Services System Based on Ajax

ZHENG Li,LUO Yuejun

0494-0911(2012)09-0074-04

P208

B

2011-09-02

測(cè)繪遙感信息工程國(guó)家重點(diǎn)實(shí)驗(yàn)室專項(xiàng)科研經(jīng)費(fèi)資助

鄭 莉(1979—),女,福建福鼎人,博士,講師,主要從事GIS及攝影測(cè)量與遙感的研究工作。

猜你喜歡
空間信息瓦片服務(wù)器端
結(jié)合多層特征及空間信息蒸餾的醫(yī)學(xué)影像分割
一種基于主題時(shí)空價(jià)值的服務(wù)器端瓦片緩存算法
慣性
淺析異步通信層的架構(gòu)在ASP.NET 程序中的應(yīng)用
成功(2018年10期)2018-03-26 02:56:14
《地理空間信息》協(xié)辦單位
在Windows中安裝OpenVPN
基于NoSQL數(shù)據(jù)庫(kù)的瓦片地圖服務(wù)
關(guān)于地理空間信息標(biāo)準(zhǔn)體系
基于網(wǎng)格的廣義地理空間信息服務(wù)
網(wǎng)頁(yè)防篡改中分布式文件同步復(fù)制系統(tǒng)
阳朔县| 日照市| 靖边县| 永年县| 宁阳县| 南安市| 阳曲县| 金川县| 大洼县| 津市市| 威宁| 汤阴县| 应用必备| 莱州市| 城固县| 平顺县| 沭阳县| 丹巴县| 林芝县| 奉贤区| 交口县| 河西区| 家居| 长治市| 紫云| 长垣县| 伊金霍洛旗| 石城县| 文安县| 双江| 广宁县| 隆尧县| 隆昌县| 建平县| 芒康县| 调兵山市| 龙里县| 策勒县| 民丰县| 陆良县| 留坝县|