<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Hopes

    Start Here..

     

    基于Web Services和.NET 技術的新一代WebGIS研究

    基于Web Services和.NET 技術的新一代WebGIS研究

    [日期:2004-12-19]來源:  作者:朱江、宋關福、鐘耳順、張繼南、李偉顧、胡中南[字體:  ]

    [摘要]本文分析了當前主流Web GIS中普遍存在的問題,并基于Web Service和.NET技術,提出了新一代的網絡地理信息系統技術框架——面向服務的Web GIS軟件平臺框架,該框架體現了“服務即是軟件,軟件即是服務”的全新理念。本文最后介紹了基于Web Service和.NET技術的新一代WebGIS平臺—SuperMap IS.NET的設計與實現。

    關鍵詞:面向服務,地理信息系統,WebGIS,.NET,Web Service

    1.引言

    WebGIS是Internet技術應用于GIS開發(fā)的產物,GIS通過WWW功能得以擴展,真正成為一種大眾的使用工具[1]。經過短短數年,萬維網地理信息系統(WebGIS)技術取得了快速發(fā)展,其應用也擴展到GIS應用領域的各個方面,成為GIS軟件技術的重要的組成部分。隨著行業(yè)應用逐步深入,廣大用戶對WebGIS技術發(fā)展提出了更高的要求,尤其在海量空間信息管理和發(fā)布、 超大用戶群并發(fā)訪問、二次開發(fā)能力以及異構系統互操作等方面提出了更高的要求。但由于WebGIS實現技術的一些限制和GIS本身的一些特點, 當前的WebGIS軟件技術中仍存在一些局限:

    (1)并發(fā)訪問能力不適應日益擴大的系統規(guī)模。由于GIS應用涉及數據量大,處理復雜,在服務器端需要實現大量的業(yè)務邏輯,加重了服務器端的負擔,因此,并發(fā)訪問能力和響應速度一直是WebGIS軟件的主要改進方向。此前多數WebGIS產品的二次開發(fā)工作通?;诮忉寛?zhí)行的腳本語言進行,更在一定程度上降低了客戶端訪問的效率。

    (2)系統的異構兼容性不足。不管是使用了微軟的DCOM、OMG的CORBA或Java RMI技術,都需要統一的運行平臺提供基本的網絡服務和系統服務。服務的客戶端與系統提供的服務本身之間必須進行緊密耦合,不同平臺的系統進行集成需要進行復雜的接口交互,系統的集成和維護代價很大。

    (3)開發(fā)、調試和維護方法復雜。Web GIS的開發(fā)需要不同的開發(fā)語言和開發(fā)工具,目前WebGIS的開發(fā)語言具有單一性,這些語言特性和系統思想差異性很大,Web應用開發(fā)人員需要熟練掌握多種開發(fā)語言,系統開發(fā)、調試和維護難度大。

    為解決WebGIS軟件上述問題,本文基于Web Service技術和.NET技術,提出了構建面向服務的新一代WebGIS軟件體系框架。

    2.WebService和.NET 新技術

    Web Service是Internet分布式計算環(huán)境中提供基礎功能的編程模塊(網絡組件),Web Service具有的開放通訊標準和強調互操作的特點已經使其成為異構系統集成的平臺和主要手段。盡管不同的組織和機構對于Web service的定義略有不同,但具有共同點:

    ◆ Web Service通過標準協議向網絡程序提供一定的功能,通常采用的標準協議是SOAP(Simple Object Access Protocol )。

    ◆ Web Service使用WSDL(Web Services Description Language)詳細的描述其接口,用戶使用WSDL這個文檔和Web Service進行交互。

    ◆ Web Service需要注冊到UUDI注冊中心(Universal Discovery Description and Integration),便于潛在用戶查詢,發(fā)現和使用。

    Gartner Group在研究了所有IT主流時尚技術的發(fā)展道路后,作出一個抽象模型(圖1)。Y軸表示流行技術受關的注程度,而X軸則表示技術的應用的成熟度。這個模型表明Web Service正在受到業(yè)界的廣泛關注,在未來的幾年內將逐步成為網絡分布式計算的潮流。


    圖1 . IT主流技術的發(fā)展抽象模型[2]
    Figure1. The abstract model of IT mainstream

    2002年2月微軟發(fā)布了.NET框架(.NET Framework,,圖2)的通用運行庫(CLR, Common Language Runtime),標志著.NET時代的到來。.NET框架是軟件集成平臺錯誤!未找到引用源。,通用運行庫和XML Web Service是其重要的兩大核心技術,通用運行庫用于集成單一操作系統內的應用軟件,而Web Service可以集成Internet級別的軟件。CLR和Web Service的核心思想都是可擴展的元數據和語義高度抽象為基礎,分離組件接口和物理實現,使得運行時進行組件的相互調用和集成。
    在圖2所描述.NET的框架體系中,.NET Runtime提供了所有.NET程序和服務的通用平臺,不管服務器,個人計算機,移動設備還是消費電子設備,.NET Runtime抽象了這些設備的共性,為應用層提供了一致的用戶接口,屏蔽了不同硬件之間的差異性。同時也解決了開發(fā)語言統一的難題,不同語言(C#,VB.NET等)都可以統一到IL(Intermediate Language)。


    圖2 . Microsoft .NET的體系框架
    Figure2.The framework of Microsoft .NET

    3.新一代Web GIS技術框架

    基于Web Service和.NET技術,筆者提出新一代Web GIS技術框架——面向服務的網絡地理信息平臺框架(圖3)。在新的框架中,軟件以服務的方式提供使用,服務即是軟件,軟件即是服務。面向服務的網絡地理信息平臺框架是一個動態(tài)性的、分布式和面向服務的系統框架。組件是整個架構的核心,它們使用和提供各種可以被發(fā)現的服務。每個組件是可管理的、可重用功能的邏輯單元。
    架構的核心被劃分成六個主要的服務類別:基于專業(yè)GIS組件的地圖服務和空間分析服務,網絡通訊服務,系統配置服務,容器服務/應用服務,群集服務,Web服務、可視化網絡控件服務,遠程管理服務。


    圖3 . 面向服務的網絡地理信息平臺框架
    Figure3. The framework of service-oriented WebGIS

    在新一代Web GIS的技術框架中,專業(yè)GIS組件、地圖服務/空間分析引擎組件、網絡通訊組件,作為整個框架的基石,為網絡地理信息服務器提供了分布式計算能力和基于地圖運算的地圖服務/空間分析引擎能力,地理信息服務器是框架的核心和樞紐,根據請求負責地圖服務/空間分析引擎的調度。GIS Web Service組件,GIS Web Controls控件以及其他實用Web應用程序依賴于地理信息服務器提供的服務,是和用戶交互的UI界面和編程接口,是二次開發(fā)的基礎。

    地圖服務/空間分析引擎是基于契約設計的引擎顆粒級別的.NET組件,它對GIS組件進行了功能封裝和重組,是網絡應用程序的可重用高級組件,具有元數據描述信息,可以實現靈活配置和動態(tài)加載。

    網絡通訊組件基于.NET Remoting技術構建,可以支持Tcp協議和Http協議,實現Web服務器和專業(yè)應用服務器之間的消息交換,簡單的遠程調用機制、可序列化的遠程對象簡化了分布式計算模式,克服了DCOM、CORBA復雜的調用機制。

    地理信息服務器是地圖服務/空間分析引擎組件和網絡通訊組件的宿主,同時它發(fā)布了地圖服務,空間分析服務和遠程管理服務等.NET Remoting遠程對象。

    集群服務在一組計算機上運行相同的軟件并虛擬成一臺主機系統為客戶端與應用提供服務。通過群集可以實現負載能力的成比例提高,同時還可以減少單點失效的危險,提高系統的穩(wěn)定性和可維護性,使計算機實現單機無法實現的容錯和負載均衡。

     GIS Web Service是面向空間信息處理的Web Service,其主要功能包括空間信息的管理、查詢、空間分析以及輸出最后處理結果。地圖服務,地名查找服務,路由服務就是典型的GIS Web Service。GIS Web Services作為向互聯網提供GIS服務的網絡組件,在客戶應用程序和空間數據處理內部系統之間起到了橋梁作用,向各種網絡應用程序提供了統一編程接口。

    可視化網絡控件是網絡快速應用程序開發(fā)(RAD)的基本元素,包括了地圖網絡控件,鷹眼網絡控件,圖例網絡控件和常用工具欄網絡控件等,這些網絡控件相互關聯和協作,在可視化開發(fā)環(huán)境中,拖放式的編程模式使得二次開發(fā)的難度降到最低點。

    4.新一代Web GIS設計與實現—SuperMap IS.NET

    基于以上新一代WebGIS技術框架,筆者設計并開發(fā)了基于Web Service和.NET技術的新一代網絡地理信息平臺—SuperMap IS.NET。SuperMap IS.NET繼承了SuperMap IS的所有功能,基于新的框架,采用C#.NET全部重寫。

    SuperMap IS.NET由應用服務器(SuperMap AppServer)、Web服務(SuperMap WebServices)和Web控件(SuperMap WebControls)等組件構成。

    為提高性能,SuperMap AppServer被設計為運行在Web服務器(IIS)之外應用服務器,作為獨立進程運行在Web服務器本機或者其他服務器上,實現了物理上的分離。由于應用服務運行于Web服務器之外,可以獨立控制地圖數據的處理和業(yè)務規(guī)則的實現,在性能和功能上可以達到較好的效果。在這種方式下,使用HTML將客戶端的請求傳給Web服務器,而Web服務器則通過.NET的遠程訪問技術和SuperMap IS應用服務器交互,應用服務器承擔了所有的查詢、計算工作,將結果構建成遠程對象反饋給Web服務器,再由Web服務器將分析處理結果對象生成HTML文檔/XML文檔傳給客戶端瀏覽器。地理信息服務服務器是一個可配置的容器服務程序,它可以配置不同的地圖服務和空間分析服務和網絡通訊組件。

    SuperMap Web Service和SuperMap Web Controls是在SuperMap AppServer 基礎上封裝構建的。SuperMap Web Service包含:MapService提供在線交互式地圖服務,AnalystService提供空間分析服務,CatalogService提供空間數據目錄服務等。SuperMap Web Service的 優(yōu)點體現如下:

    (1)封裝性。SuperMap WebServices封裝了地理空間數據訪問、處理和分析功能,用WSDL描述GIS功能,為服務使用者提供統一的調用接口,服務使用者無需了解也無法了解服務提供者的物理數據組織結構和功能實現方式,有利于保證數據的安全和系統的穩(wěn)定性。

    (2)接口一致性和松散耦合性。允許異構系統以相同的方式進行互操作。不同系統不需要統一的運行平臺支持,可以使用不同開發(fā)語言(C++, Java, C#等)和開發(fā)工具調用SuperMap WebServices提供的功能。各個系統運行在不同的操作系統平臺,具有良好的可定制能力和互操作性。用戶系統和SuperMap IS平臺松散耦合,系統升級和平臺遷移互不影響,解決了DOCM,CORBA等分布式計算技術的緊密耦合性帶來系統維護代價大的問題。

    (3)網絡級復用性。SuperMap WebServices是Internet級地理信息服務應用構件,是可重用的可編程單元,用戶網絡程序可以直接通過Internet訪問GIS功能。

    SuperMap WebControls 則是SuperMap IS.NET中提供Web應用程序的服務器端控件,提供了更直觀便捷的Web應用開發(fā)工具,具有以下特點:

    (1)支持所見即所得的設計時呈現。SuperMap WebControls具有友好的用戶操作界面,繼承了桌面程序控件的優(yōu)點,使得網絡程序開發(fā)實現可視化設計,所見即所得,網絡應用程序在設計時和運行時達到視覺效果上的統一(圖4)。提供設計式的地圖顯示效果可以使得界面設計人員更加容易地設計出符合最終用戶操作習慣的友好界面,從心理學的角度來看,盡早的看到系統運行的效果有助于提高系統開發(fā)人員的創(chuàng)造激情和把握系統全局的能力。

    (2)支持多語言交互。SuperMap WebControls采用專門為.NET設計的C#開發(fā)語言編寫,編譯生成中間代碼IL (Intermediate Language), 對任何.NET開發(fā)語言(C#,VB.NET,VC++.NET等)提供相同的編程模式和用戶接口。


    圖4. SupeMap Web Control設計時(左)呈現和運行時呈現比較(右)
    Figure 4. Comparison between design-time (left) and run-time (right) of SuperMap Web Controls

     SuperMap IS.NET提供了快速應用開發(fā)的方法和能力。在圖4范例中,使用SuperMap IS Web Controls庫中的MapControl, LayerControl, OverviewControl,和ToolBarsControl輕松構建了一個面向地圖的示范Web應用,通過它們之間的關聯設置,編寫簡單代碼就可以實現交互式電子地圖的功能,在此基礎上,二次開發(fā)可以實現基于交互式電子地圖的高級應用功能。

    5.結語

    基于Web Service和.NET技術的Web GIS技術平臺框架,具有良好的封裝性、松散耦合性、網絡級復用性,支持設計時所見即所得、多種語言交互、異構系統互操作等,適合面向網絡服務的快速應用開發(fā),由于其體系結構的優(yōu)越性,必將成為未來WebGIS應用開發(fā)的主流技術。

    參考文獻:

    [1]宋關福等,WebGIS--基于Internet的地理信息系統,中國圖像圖形學報,1998年第3期;
    [2]柴曉路,架構Web Service:什么是Web服務?
    http://www-900.ibm.com/developerWorks/cn/webservices/ws-wsar/part2/index.shtml;
    [3]Don Box, Chris Sells . Essential .NET, Volume 1: The Common Language Runtime. Addison Wesley. 2002.11。

    作者簡介:
    朱江,男 (1978 - ),漢族,浙江省永嘉縣人,中國科學院地理科學與資源研究所地圖學與地理信息系統專業(yè)博士生,研究方向為網絡地理信息系統技術,從事網絡地理信息系統軟件研究與開發(fā)工作。

    posted on 2012-06-19 16:42 ** 閱讀(330) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發(fā)表評論。


    網站導航:
     

    導航

    統計

    公告

    你好!

    常用鏈接

    留言簿(2)

    隨筆檔案

    文章分類

    文章檔案

    新聞檔案

    相冊

    收藏夾

    C#學習

    友情鏈接

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 国产大片91精品免费观看不卡| 久久福利青草精品资源站免费| 无限动漫网在线观看免费| 久久精品国产精品亚洲毛片| 日韩精品免费在线视频| 亚洲综合在线观看视频| 99久久免费精品视频| 亚洲视频手机在线| 久久笫一福利免费导航| 亚洲成_人网站图片| 精品国产一区二区三区免费看| 亚洲AV永久无码精品一福利| 国产yw855.c免费视频| 一区二区三区在线观看免费| 亚洲欧洲美洲无码精品VA| 免费一级毛片在线播放视频| 精品亚洲成AV人在线观看| 精品国产无限资源免费观看| 亚洲一卡2卡三卡4卡无卡下载| 国产精品视频免费一区二区三区| 一级做a毛片免费视频| 亚洲AV无码久久| 久久精品网站免费观看| 日韩成人精品日本亚洲| 中文字幕不卡亚洲| 蜜桃AV无码免费看永久| 亚洲经典千人经典日产| 精品国产亚洲男女在线线电影 | 免费看一级一级人妻片 | 亚洲av无码专区在线播放| 亚洲高清视频免费| 亚洲av无码成人精品国产| 久久精品国产精品亚洲下载| 欧洲精品99毛片免费高清观看 | 久久亚洲AV无码西西人体| 免费精品无码AV片在线观看 | 成人国产精品免费视频| 亚洲国产亚洲综合在线尤物| 免费a级毛片18以上观看精品| 国产在线精品一区免费香蕉| 亚洲一级黄色大片|