999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

瓦片地圖動態(tài)緩存中間件的優(yōu)化設計及實現(xiàn)

2014-12-12 01:47:00李治慶焦孟凱李成名
測繪通報 2014年1期
關鍵詞:瓦片服務

孫 偉,李治慶,焦孟凱,李成名

(1.山東科技大學測繪科學與工程學院,山東青島266510;2.中國測繪科學研究院,北京100830)

一、引 言

近幾年來,隨著Google Map等在線地圖服務網(wǎng)站和系統(tǒng)的興起,利用瓦片進行地圖服務逐漸成為網(wǎng)絡地理信息服務的主要形式,也使地理信息在線服務的能力和效率得到了有效提升[1-3]。與此同時,開放地理信息系統(tǒng)協(xié)會(Open GIS Consortium,OGC)也出臺了一些網(wǎng)絡地圖服務標準,使瓦片地圖服務的利用更加規(guī)范。

現(xiàn)有的瓦片地圖服務一般有兩種方式:一是預生成靜態(tài)瓦片,通過緩存大量規(guī)則的地圖瓦片來響應客戶端的請求;二是采用動態(tài)瓦片,即按照用戶請求序列實時生成并反饋地圖瓦片[4]。這兩種方法各有優(yōu)缺點。采用靜態(tài)緩存方法的優(yōu)點是客戶端的響應效率高,用戶交互體驗較好;缺點是由于瓦片需要預先生成,地圖現(xiàn)勢性差,用戶可能無法得到真實的地理信息反饋。而采用動態(tài)緩存方法的優(yōu)點是地理信息實時、現(xiàn)勢性較好;缺點是即時反饋需要耗費大量的圖片生成時間,客戶端響應效率低、用戶交互體驗差,同時也會產生大量不必要的服務器處理開銷[5]。

為了解決地圖服務高效和現(xiàn)勢性的雙重需求,目前較常用的方法是采用具有動態(tài)切圖策略的地圖服務中間件,部署在客戶端和服務器中間,根據(jù)客戶端發(fā)送的地圖服務請求,將相應的動態(tài)或靜態(tài)緩存反饋到客戶端。如GeoWebCache和TileCache等,就是目前國際上比較流行的開源瓦片緩存中間件,它們在保證地圖現(xiàn)勢性的同時,也提高了訪問速度,具有較好的應用價值。本文就在參考GeoWebCache的架構基礎上,從服務類型、信息交互、歷史數(shù)據(jù)利用等方面,進行進一步的優(yōu)化,從而提供更好的瓦片地圖服務。

二、GeoWebCache原理、結構及不足

1.GeoWebCache原理及結構

GeoWebCache是OpenGEO的一個開源瓦片地圖服務模塊,采用Java實現(xiàn)基于WMS的動態(tài)緩存服務。在實際工作中,GeoWebCache部署于客戶端和WMS兼容服務器之間,充當?shù)貓D訪問代理。其工作原理是:當客戶端請求地圖時,GeoWebCache服務器攔截該請求,判斷本次請求的瓦片是否存在。如果存在,則將這些緩存圖片直接渲染至客戶端;如果不存在,則發(fā)送請求至WMS Server,由服務器處理請求數(shù)據(jù),并返回給GeoWebCache服務器,Geo WebCache服務器經(jīng)過渲染及緩存數(shù)據(jù)圖片后繪制到客戶端。

與單純的靜態(tài)緩存相比,利用GeoWebCache后的地圖服務會有明顯的能力提升。客戶端所請求的圖片事先或者在重復請求過程中就能夠存儲在GeoWebCache中。當其攔截到新的地圖服務請求,分析后若發(fā)現(xiàn)與其存儲的地圖瓦片一致,則可直接將已存儲的地圖瓦片返回客戶端,不需要在服務器端重復計算,這使得地圖繪制的速度提升數(shù)倍,也得到了更好的用戶體驗效果,如圖1所示。

圖1 GeoWebCache結構及請求處理過程

從圖1可以看出,GeoWebCache的主體由服務的管理部分和緩存存儲兩部分構成。服務管理部分能夠支持 WMS、WMTS、TMS、KML、GMaps及VE等多種服務,客戶端使用基于 HTTP的 Web Services與其進行服務請求,可滿足多種客戶端請求需求;緩存存儲部分采用標準接口管理系統(tǒng)元數(shù)據(jù)及瓦片空間索引,并為地圖瓦片提供高速緩存,支持的數(shù)據(jù)源主要為WMS兼容服務器,如GeoServer、ArcIMS、MapServer等。

2.GeoWebCache不足分析

作為一個開源的瓦片地圖服務中間件,GeoWebCache能夠較好地改善地圖服務在動態(tài)更新和高效響應之間的問題。但作為一種需要兼顧各類瓦片服務請求和服務提供的中間件,其仍存在一些可改善之處:

(1)服務器端接口擴展

盡管GeoWebCache能夠提供較為豐富的前端可支持服務,但是在后端的數(shù)據(jù)源,卻僅提供了面向WMS兼容服務器的單向接口。而WMS是OGC標準化規(guī)范后的服務接口,這種方式限制了其他(如ArcGISServer、MapServer等地圖服務器)的使用。

(2)歷史版本數(shù)據(jù)的管理與應用

GeoWebCache的緩存存儲器存儲內容包括系統(tǒng)元數(shù)據(jù)、瓦片空間索引數(shù)據(jù)及瓦片緩存,但缺乏能夠表現(xiàn)地理信息長時間序列變化的的版本信息,時序性無法很好地展現(xiàn)。

(3)服務協(xié)議的擴展

對于客戶端的請求,GeoWebCache需要使用基于HTTP的Web Services,從而保證服務的廣泛支持和適用性。但在服務器端,由于使用了WMS兼容服務器,也將服務網(wǎng)絡協(xié)議局限于HTTP。

三、瓦片地圖動態(tài)緩存中間件的優(yōu)化

為了使瓦片地圖動態(tài)緩存效果在效率、服務擴展及歷史回溯等方面更加完善,本文在參考GeoWebCache結構的基礎上,針對其目前存在的幾個不足之處,設計了一種動靜結合的可回溯擴展性瓦片地圖動態(tài)緩存中間件DCM(dynamic caching middleware),并從底層編程實現(xiàn)。

1.架構設計

在主體架構方面,DCM分為服務解析模塊、服務處理模塊和服務適配模塊3個部分(如圖2所示)。其中,服務解析模塊負責對客戶端發(fā)送來的服務請求進行解析判斷,然后把解析結果傳遞給服務處理模塊進行處理。服務處理模塊根據(jù)具體的解析結果進行處理操作,包括靜態(tài)緩存獲取、動態(tài)切圖及動態(tài)緩存更新等。服務適配模塊則主要是在需進行動態(tài)切圖及更新時,將發(fā)送來的服務模式與后臺服務器端的服務模式進行最優(yōu)化匹配,并將處理后的結果按需反饋給服務處理模塊進行操作。此外,DCM外部還搭配有一個緩存數(shù)據(jù)庫,用于存放系統(tǒng)元數(shù)據(jù)、靜態(tài)緩存數(shù)據(jù)及緩存版本信息。其中,靜態(tài)緩存可根據(jù)版本信息進行分時間節(jié)點存放。服務器端則可以是Web Services服務器及其他可提供緩存服務的服務器。

在細節(jié)方面,針對GeoWebCache存在的幾點不足,對DCM在服務擴展和響應效率上進行優(yōu)化設計(圖2中數(shù)字標注部分)。

1)利用插件式擴展結構,對服務解析配置模塊進行服務動態(tài)擴展能力的提升,從而達到客戶端多類型請求的自動擴展。

2)增加一個服務適配模塊,根據(jù)客戶端發(fā)送的服務請求和DCM實時鏈接的網(wǎng)絡地圖服務器或者空間數(shù)據(jù)庫所支持的最高效地圖服務接口之間進行轉換,從而提供滿足當前環(huán)境需求的最高效服務能力。

3)增加緩存存儲模塊中的版本信息索引,用戶默認操作時,仍舊根據(jù)系統(tǒng)元數(shù)據(jù)信息來進行最新緩存的靜態(tài)或動態(tài)地圖服務,但同時提供用戶可選的靜態(tài)歷史緩存數(shù)據(jù)獲取服務。

4)根據(jù)服務器端的響應配置,擴充后臺服務協(xié)議,增加FastCGI等可提高服務的響應效率與穩(wěn)定性的協(xié)議,從而提高整個地圖服務服務器端的能力。

整個服務流程中,所有地圖服務客戶端的請求都向DCM發(fā)送,DCM根據(jù)請求來確定是否需要向服務器端發(fā)出相應瓦片切片命令,而具體的瓦片存儲及反饋則在DCM中實現(xiàn)。這種結構使得DCM兩端都是低耦合的結構,在方便客戶端用戶使用的同時,也可提高動態(tài)緩存服務效率。

圖2 DCM結構示意圖

2.響應流程

加載了DCM后,在進行瓦片地圖服務時,具體處理流程如圖3所示。

圖3 地圖瓦片動態(tài)緩存服務流程

客戶端發(fā)出請求被DCM接收(步驟①),并由服務解析模塊進行解析(步驟②)。解析的結果有兩種:一種是該請求的地圖服務所涉及的地圖瓦片已存在(步驟③),另一種是該請求的地圖服務所涉及的地圖瓦片不存在(步驟⑧)。

對于地圖瓦片已經(jīng)存在的情況,根據(jù)服務請求范圍,通過服務處理模塊查找緩存數(shù)據(jù)庫中的元數(shù)據(jù),根據(jù)查詢結果判斷相關地圖數(shù)據(jù)是否已更新(步驟④)。若無最新的地圖數(shù)據(jù),即瓦片不需要更新,則直接從緩存數(shù)據(jù)庫中按照服務請求獲取已有的瓦片(步驟⑤),并將瓦片通過服務處理模塊反饋到客戶端(步驟⑩);若已有最新的地圖數(shù)據(jù),即原有地圖瓦片已非最新,則需要根據(jù)元數(shù)據(jù)信息將該更新結果發(fā)送到服務配置模塊,服務配置模塊進行服務最優(yōu)匹配后向服務器端發(fā)送最新地圖的實時動態(tài)瓦片生成請求(步驟⑥),生成的瓦片及其元數(shù)據(jù)信息、版本信息將通過服務配置模塊反饋給服務處理模塊,并存儲至緩存數(shù)據(jù)庫(步驟⑦),同時更新后瓦片則根據(jù)原地圖服務請求返回客戶端(步驟⑩)。

對于地圖瓦片不存在的情況,根據(jù)服務請求的范圍計算圖片的位置,并將該處理結果發(fā)送到服務器端進行實時動態(tài)瓦片生成(步驟⑨),生成的瓦片、元數(shù)據(jù)信息及版本信息存儲至緩存數(shù)據(jù)庫(步驟⑦),并將最終的瓦片通過服務處理模塊反饋到客戶端(步驟⑩)。

四、優(yōu)化測試

為了測試采用DCM瓦片動態(tài)緩存后的服務實際效果,本文搭建了測試環(huán)境,并對靜態(tài)緩存WMTS與使用DCM的動態(tài)緩存服務進行性能測試。

1.測試方案

在測試環(huán)境方面,測試客戶端選擇WebLOAD V8.1來模擬訪問時的Web操作;在測試服務器端,選用Intel雙核2.0 GHz處理器、2 GB內存服務器;測試網(wǎng)絡環(huán)境選擇100 Mbit網(wǎng)絡鏈接。

在測試數(shù)據(jù)方面,選擇全國范圍1∶400萬地圖數(shù)據(jù)并按照地理信息公共服務平臺電子地圖切片方式[6]中第8級進行切片,瓦片大小為256像素×256像素,格式為PNG,切圖后瓦片共計2018張,占用磁盤空間9 MB。測試選擇WMTS靜態(tài)緩存和本文設計的DCM兩種方式進行對比,針對WMTS使用已進行靜態(tài)緩存后的瓦片地圖數(shù)據(jù),針對DCM則利用未進行切片的地圖數(shù)據(jù)。

在測試方法方面,WMTS直接向測試服務器發(fā)送數(shù)據(jù)請求,而DCM需將已有緩存清空。在10個并發(fā)條件下,對同一區(qū)域范圍地圖的請求次數(shù)分別采用 50、100、300、500、1000、2000、3000、5000 八個組別,以多線程方式模擬客戶端發(fā)出指令,同時向DCM發(fā)送2×2個地圖瓦片數(shù)據(jù)請求,最終結果評定從服務響應時間方面進行比較。

2.結果及分析

圖4顯示了同樣的請求環(huán)境下,分別對靜態(tài)緩存策略下WMTS請求,與動態(tài)緩存策略下DCM請求平均響應時間的對比。從圖4可以看出,對于靜態(tài)緩存策略下WMTS請求,其響應時間較為平均,約為4.5 ms。而對于增加了DCM并進行瓦片動態(tài)緩存的WMTS請求,其響應時間變化較大。在測試初期階段,由于已將DCM的緩存清空,因此在進行地圖請求時,需要通過DCM向服務器發(fā)出地圖獲取指令并按照獲取范圍實時切圖,然后將瓦片存儲入DCM,最后返回客戶端,因此時間較長,約為530 ms;而隨著請求次數(shù)的不斷增加,DCM緩存存儲器中的地圖瓦片不斷增加,因此存儲在DCM中的瓦片被檢索到的概率越來越大,DCM向服務器發(fā)送指令并實時切圖的次數(shù)也隨之減少,平均響應時間急劇降低,當累積請求次數(shù)達到950次時,兩種請求方法的響應時間已經(jīng)接近相同。而隨后,DCM的請求響應時間與普通WMTS請求大致相同。當DCM所緩存的地圖瓦片趨于飽和后,DCM請求響應時間也逐漸穩(wěn)定,約為5 ms。因此可見,使用了動態(tài)緩存策略后,隨著對其訪問量的逐漸增大,不僅能夠有效保持與靜態(tài)緩存服務相當?shù)母咝ы憫芰Γ疫€能夠實現(xiàn)實時動態(tài)切圖,對于提高地理信息更新服務能力具有重要意義。

五、結束語

瓦片地圖動態(tài)緩存中間件能夠有效地提升瓦片地圖服務的地圖現(xiàn)勢性和服務響應效率,從而為用戶提供最新的地理信息和更好的使用交互體驗。本文在參考目前國際上較為流行的瓦片緩存中間件GeoWebCache結構的基礎上,針對其在服務擴展性、歷史版本數(shù)據(jù)使用及服務通信協(xié)議等方面存在的局限,從底層進行結構優(yōu)化,設計并實現(xiàn)了動態(tài)緩存中間件DCM,可提高現(xiàn)有瓦片動態(tài)緩存服務的擴展能力和服務水平。通過對比測試,證明了該緩存中間件DCM不僅可以提供高效的服務響應能力,而且可根據(jù)地圖數(shù)據(jù)的現(xiàn)勢性提供最新的瓦片地圖服務。與此同時,DCM也可根據(jù)客戶端和服務器端服務請求和提供方式,選擇最優(yōu)的服務處理及傳輸,動態(tài)加載其他類型的瓦片服務,做到瓦片地圖服務最大限度的高效提供。

圖4 WMTS與DCM平均響應時間對比圖

本文提出的動態(tài)緩存中間件DCM雖然能夠提供較好的地圖瓦片服務,但其試驗效果仍舊是在特定試驗環(huán)境下得出的,在規(guī)模化應用下的服務響應能力仍有待進一步的探索。此外,瓦片的空間索引、現(xiàn)勢數(shù)據(jù)的快速切片等也是制約瓦片地圖服務能力的重要因素,在今后的研究中,還需對這些因素進行更深入的研究。

[1]周沛.智能交通系統(tǒng)中的瓦片地圖技術研究與應用[D].上海:同濟大學,2008.

[2]王曉東,劉慧平,喬瑜.利用Bing Maps地圖切片實現(xiàn)網(wǎng)絡地圖服務[J].國土資源遙感,2010(2):122-127.

[3]劉冰,謝軻,陳小樂,等.基于GIS的瓦片式地圖切圖算法的設計與實現(xiàn)[J].科技信息,2011(7):60-61.

[4]許虎,聶云峰,舒堅.基于中間件的瓦片地圖服務設計與實現(xiàn)[J].地球信息科學學報,2010,12(4):562-567.

[5]聶云峰,劉海玲,許虎.GeoWebCache瓦片地圖服務中間件研究[J].測繪科學,2011,36(6):207-209.

[6]國家測繪地理信息局.CH/Z 9011-2011地理信息公共服務平臺電子地圖數(shù)據(jù)規(guī)范[S].北京:測繪出版社,2011.

猜你喜歡
瓦片服務
河水
遼河(2025年7期)2025-07-25 00:00:00
服務在身邊 健康每一天
慣性
揚子江(2019年1期)2019-03-08 02:52:34
服務在身邊 健康每一天
服務在身邊 健康每一天
招行30年:從“滿意服務”到“感動服務”
商周刊(2017年9期)2017-08-22 02:57:56
基于NoSQL數(shù)據(jù)庫的瓦片地圖服務
主站蜘蛛池模板: 国产91九色在线播放| 伊人久久大香线蕉影院| 国产成人永久免费视频| 香蕉久久永久视频| 久久综合五月婷婷| 亚洲视频免费在线看| 日韩亚洲综合在线| 五月天天天色| www亚洲天堂| 国产91在线|日本| 99热在线只有精品| 国产亚洲欧美日韩在线观看一区二区| 久久99国产乱子伦精品免| 青草国产在线视频| 日韩毛片免费观看| 日韩国产综合精选| 亚洲国产精品无码AV| 国产精品手机在线播放| 成人在线天堂| 亚洲αv毛片| 国产av一码二码三码无码| 91在线播放国产| 亚洲乱伦视频| 国产欧美精品专区一区二区| 国模粉嫩小泬视频在线观看| 亚洲男女在线| 亚洲欧美成人综合| 中文字幕永久视频| 欧美伦理一区| 久久精品无码专区免费| 亚洲—日韩aV在线| 91精品国产情侣高潮露脸| 激情综合网址| 手机成人午夜在线视频| 国产一二三区在线| 日韩av手机在线| 国产视频自拍一区| 国产成人精品男人的天堂| 久久天天躁夜夜躁狠狠| 夜色爽爽影院18禁妓女影院| 久一在线视频| 久久国产高清视频| 亚洲精品第一在线观看视频| 婷婷激情五月网| 欧美福利在线播放| 丁香五月婷婷激情基地| 亚洲欧美综合在线观看| 中文字幕亚洲另类天堂| 欧美午夜小视频| 亚洲第一视频免费在线| 国产亚洲欧美日韩在线一区| 国产综合精品一区二区| 精品国产一二三区| 亚洲精品视频免费看| 精品人妻系列无码专区久久| 青青极品在线| 一级毛片免费的| 欧美va亚洲va香蕉在线| 欧美国产精品不卡在线观看 | 国产精品亚洲va在线观看| 亚洲男人在线| 亚洲日韩国产精品无码专区| 丁香婷婷激情网| 亚洲爱婷婷色69堂| 久久久久免费看成人影片 | 男女性午夜福利网站| 一级高清毛片免费a级高清毛片| 欧美丝袜高跟鞋一区二区| 伊人久久影视| 亚洲精品少妇熟女| 中文字幕人成乱码熟女免费| 亚洲美女一区| 久久综合九色综合97婷婷| 精品成人免费自拍视频| 亚洲一区二区三区在线视频| 久久久久久尹人网香蕉 | 小13箩利洗澡无码视频免费网站| a亚洲视频| 国产成人精品综合| 扒开粉嫩的小缝隙喷白浆视频| 国产丰满大乳无码免费播放 | 在线亚洲小视频|