陳剛銳,葛 瑩,艾斯卡爾·阿不力米提,趙慧慧
(河海大學 地球科學與工程學院,江蘇 南京 211100)
GIS云計算系統實例的框架結構研究
陳剛銳,葛 瑩,艾斯卡爾·阿不力米提,趙慧慧
(河海大學 地球科學與工程學院,江蘇 南京 211100)
云計算具有可擴展性和高可用性的特點,能夠快速配置和調度服務資源,按需為用戶提供彈性的GIS服務。基于典型實例剖析了GIS云計算系統的框架結構,介紹了與GIS云計算系統框架結構相關的Web應用服務器工作原理,討論分析了所用典型實例中云計算系統各組件的地位與作用。從可擴展性和高可用性的角度對GIS云計算系統框架結構的實現方式進行了較為深入、全面的探討,歸納了負載均衡與動態擴展在向GIS服務提供自適應性計算資源和提高云計算系統容錯性方面以及面臨用戶數量與地理空間數據使用量增加時在保持云計算系統高性能與高資源利用方面的作用以及相關方法,總結了借助云計算技術自動獲得彈性計算資源和構建高效穩定GIS應用的技術途徑與手段。
GIS云計算系統實例;ArcGIS Server應用服務器;可擴展性;高可用性
ESRI公司于2012年公布了ArcGIS 10.1 for Server版本,以全新Site-GIS Servers框架取代傳統SOM-SOCs體系結構出現在大眾面前,正式開啟ArcGIS軟件的云計算計劃[1]。ESRI公司期望通過云計算技術,實現GIS資源的動態彈性服務,全面提高GIS資源利用率,降低GIS應用研發和運維成本,做到隨時隨地、按需、快捷地訪問GIS服務的共享資源。
云計算作為一種新的基于可配置共享基礎設施的計算模式,它在云服務提供商較少參與的前提下,為用戶提供高性能、高可用、可伸縮的網絡、存儲、計算等服務資源[2]。通過按需動態配置硬件、軟件和數據集,云計算能向用戶提供基礎設施、平臺、存儲、軟件以及應用等彈性服務資源[3]。云計算的實現涉及兩方面內容:一是云計算平臺基礎設施的構建,二是在這個基礎設施上的云計算應用程序[4]。任何系統平臺或者Web應用程序,如果要遷移至云計算環境,必須從以上兩方面來實施。
云計算是能夠提供可擴展性、虛擬化、有效性和可靠性的下一代計算平臺。針對云計算的這些特點,現有ArcGIS云計算實現使用的技術主要體現在以下4個方面:
(1)以Apache Geronimo應用服務器構建ArcGIS Server Site站點。通過監測GIS Server的ArcGIS組件狀態變化,為組件自動、動態地生成遠程組件管理代理,動態擴展組件的遠程管理功能,實現以組件為粒度對ArcGIS Server Site站點進行動態管理。
(2)以P2P計算模型重構ArcGIS Server Site站點。根據Tomcat-GIS Server-GIS應用的層次結構設計P2P節點,確保節點在GIS功能上對等,實現ArcGIS資源按需動態配置,使得GIS應用具有可擴展性,消除傳統SOM-SOCs體系結構中固有的單點失效問題。
(3)以預裝或用戶自定義方式實現負載均衡。通過Web Adaptor組件整合Web服務器與GIS服務器,屏蔽GIS Server端口,根據GIS Server負載情況轉發Web服務請求以達到GIS Server負載均衡,或將Web Adaptor與應用服務器或專門的負載平衡軟件結合使用,實現用戶自定義條件的負載均衡。
(4)以REST軟件架構模式重新定義GIS服務。將ArcGIS數據和操作定義為REST式資源,并按URI唯一標識GIS資源,再通過ArcGIS for Server發布為GIS服務,依據目錄結構式組織GIS服務由URL訪問[5]。
通過上述技術手段,ArcGIS for Server實現了云計算的兩個重要目標:可擴展性和高可用性。可擴展性是指云計算可以將GIS Server實時加入到大規模的集群中,以滿足若干個節點同時處理一個計算任務的需要,提高了云計算平臺的處理能力;高可用性是指GIS Server能容忍節點的錯誤,即使一部分節點發生失效,放棄這些節點,將任務再分配給其他節點,也不會影響GIS云計算應用的正確運行,可以提高分布式存儲的容錯性。
為了節約開發成本,ESRI選擇開源Apache Geronimo框架構建GIS Server。Apache Geronimo是遵循J2EE(Java 2 platform Enterprise Edition)規范的Web應用服務器。J2EE應用服務器采用多層分布式應用模型框架結構,包括Presentation tier展示層、Business tier業務層和Data tier數據層[6],如圖1所示。其中業務層的Web container(Web容器)、EJB container(EJB容器)和J2EE services(J2EE服務)構成J2EE應用服務器。Web容器負責為部署在其中的Web組件(JSP、Servlet等)提供運行支持,處理用戶的Web請求,再將請求轉發給EJB容器;EJB容器負責管理EJB組件(Enterprise Beans),處理業務邏輯并與數據層進行交互。

圖1 J2EE應用服務器架構
ApacheGeronimo是一款開源的J2EE應用服務器平臺,它的核心是Geronimo Kernel內核和Geronimo Bean(即GBean)框架[7]。Apache Geronimo框架構成一個基礎設施平臺,只提供諸如事務、安全、日志、命名、遠程控制之類的系統服務,以形成特定的應用程序環境。Geronimo自身不提供任何J2EE服務,它主要是通過GBean集成Tomcat、OpenEJB、ActiveMQ等第三方組件來提供對符合J2EE規范構造的服務器支持[8]。
Geronimo Plugin插件通過GBean將第三方組件包集成于Geronimo Kernel內核。GBean是Geronimo框架的基石。它是一個Apache Geronimo可重用組件,運行在Geronimo Kernel內核中。GBean有兩個重要角色:一個是適配器,另一個是代理器。第一,GBean具有適配器的作用。它在GBean中封裝第三方組件的創建和啟動邏輯,用戶只需要借助XML向GBean傳遞第三方組件的設置參數即可。第二,GBean具有代理器的作用。它在GBean中封裝第三方組件的實現過程,并由GBean負責組件之間的消息傳遞,用戶只需要調用相應的GBean實例即可。
1.1 Apache Tomcat結構
Apache Tomcat是一個廣泛應用的開源Web服務器[9]。它是Servlet/JSP標準的具體實現,專門負責處理HTTP請求。Tomcat體系結構如圖2所示。

圖2 Tomcat服務器體系結構
一個Tomcat服務器可以運行多個Host虛擬主機。每個Host主機可以配置多個域名,對應相同或不同的應用。服務器根據客戶端發送的域名來確定處理的Host主機。一個Host主機又可以部署多個Web應用。每個應用提供對自身的生命周期管理等。
Connector組件負責接收用戶請求。當Connector組件接收到客戶端Web請求時,按照用戶請求的內容解譯出Host主機名,然后映射到相應的Host主機,再由Host主機做簡單的業務處理,將請求轉發給EJB服務器。如上所述,GBean是適配器,它為每種Tomcat支持的Connector組件定義一個GBean。
1.2 Apache OpenEJB結構
EJB(Enterprise JavaBean)服務器是J2EE應用服務器的最重要組成部分,它將功能性服務和非功能性服務分離[10]。組件只封裝業務邏輯功能,組件容器為組件提供如事務、安全、并發控制等非功能性服務,所以組件容器是EJB服務器的核心。它在運行期間創建和管理組件實例,自動為組件分配系統資源,維護組件之間的交互,透明地攔截客戶請求。
EJB服務器采用基于組件的分布式計算架構[11],如圖3所示。
這是一個典型的EJB服務器結構,包括EJB Server、EJB Container和EJB三個關鍵模塊,其中EJB是基于事務的分布式企業級應用程序組件。EJB服務器的特點是:
(1)EJB只包含業務邏輯功能;
(2)EJB實例由EJB Container動態生成且管理;
(3)由EJB Container負責提供EJB非功能性服務,如安全、事務管理等;
(4)EJB服務與非功能性服務的實現分離;
(5)EJB具有可移植性,即能用已有的EJB構造新的應用程序,且該程序能在任何J2EE兼容的服務器上運行。
1.3 Web服務器集群
在J2EE架構中,Web服務器集群是一組相互聯系且高度緊密協同工作的Web應用服務器實例,負責提供均衡、透明的企業級服務[12]。一般來說,Web服務器集群是由一臺前端調度器和多臺后端節點服務器組成,通過將用戶請求按特定的分發策略由前端調度器重定向到不同的后端節點服務器以達到資源分配的目的[13]。前端調度器是GIS Server集群的核心,它在客戶端與GIS Server之間建立起TCP連接。每個服務器集群對應一個GIS應用,每個集群包括1個前端調度器和一個以上無狀態的GIS Server實例。通常,應用相關狀態采用分布式緩存進行維護,應用服務器實例故障不會影響應用可用性[14]。
Web服務器集群具有可擴展性和高可用性兩個特點[3]。可擴展性通過增加Web服務器以提高額外工作能力來實現,而高可用性通過冗余節點以減少故障或失效來保證。Web服務器集群這兩個特點建立在負載均衡和故障轉移兩個云計算關鍵技術的基礎上[15]。負載均衡是指當大量用戶同時訪問GIS應用時,GIS云計算平臺可以采用專門的調度算法將負載均衡地分配給不同的GIS應用服務器處理。故障轉移意味著高可用性,它利用了集群節點間狀態復制和故障檢測技術來實現。
J2EE應用服務器集群架構一般分為兩類:配置結構式集群和分離結構式集群[16]。配置結構式集群是在集群的每個應用服務器中部署同樣的組件,Web容器和EJB容器在同一臺應用服務器。分離結構式集群是將Web容器和EJB容器分離,各自部署在不同的應用服務器。ArcGIS應用服務器集群屬于分離結構式集群架構,前端調度器和GIS Server各自部署在不同的應用服務器中。它是整個云計算平臺的核心,主要負責地圖生成和發布、投影、地理處理建模等專業GIS應用[17]。
2.1 ArcGIS Server Site解析
在Site-GIS Servers框架體系中,ArcGIS Server Site是ArcGIS云計算框架的基礎組件。從云計算技術視角來看,ArcGIS Server Site是一個獨立完整的J2EE應用服務器集群,提供動態定制、配置、伸縮以及更新集群節點的功能,用于實現GIS任務的大規模并行處理。從架構的角度看,ArcGIS Server Site主要由3個組件容器組成:Web Server、Web Adaptor和GIS Server。其中Web Server容器用于接收GIS服務請求,Web Adaptor容器用于轉發GIS服務請求,GIS Server容器用于處理GIS服務請求[18]。
ArcGIS for Server 10.1及以后的版本同10.0版本相比,最大的變化在于GIS Server框架體系。在之前的版本中,GIS Server采用集中式控制框架體系來建立,它分為SOM和SOC兩個部分:SOM負責管理和分發用戶請求,SOC負責執行用戶請求[19]。而在新版本中,它基于P2P架構設計,SOM和SOC的功能統一合并至GIS Server,不再區分SOM和SOC,不存在主次計算節點,每個GIS Server既可以分發用戶請求,也可以處理用戶請求,實現計算節點的完全對等[20]。這種框架能保證ArcGIS for Server具有云計算可擴展性和高可用性的特點。
另外,Geospatial EJB采用多層分布式應用模型架構,如圖4所示,包括Client層、EJB層和EIS層。

圖4 ArcGIS Server Geospatial EJB框架結構
由圖4可知,Geospatial EJB調用過程是:
(1)ArcGIS EJB客戶端使用lookup方法查找JNDI(Java Naming and Directory Interface)名字服務;
(2)客戶端根據匹配的lookup查詢內容生成EJB Home實例;
(3)客戶端調用該EJB Home實例創建EJB Object,再調用該實例生成Remote Object實例以及ArcGIS EJB實例;
(4)客戶端通過與EJB Object交互,利用Remote接口向Server發起請求,由Resource Adapter溝通EJB層與EIS層,從而使客戶端調用ArcObject組件。
2.2 ArcGIS Server可擴展性
可擴展性用于度量輸出計算結果隨投入的計算資源變化的關系[21]。一般認為,如果輸入的計算資源增加,則輸出的計算結果也相應增加,系統就具有較高的可擴展性。可擴展性不僅能夠使系統通過計算資源的自動伸縮來應對高并發的用戶請求,而且也能通過調整單個服務的計算能力,充分利用硬件資源。一個不具備可擴展性的GIS應用,即使建立在云計算平臺上也很難具有可擴展性;一個具有可擴展性的GIS應用,可以借助云計算平臺更加方便、快速地調度計算資源來適應服務的增減,具有較高的計算效率[22]。
ArcGIS Server應用服務器具有充分的可擴展性。它被部署在云計算平臺上,可以利用云計算高彈性的特點,靈活地增減計算資源。特別是,ArcGIS Server Site可以利用它構建GIS Server集群。實際上,GIS Server集群就是一組安裝了ArcGIS Server的虛擬機/物理機,它們可以作為一個整體共同對外提供GIS服務,組成集群的每臺計算機稱為GIS計算節點,一個ArcGIS Server Site可以包含一個或多個集群,一個集群可以包含一個或多個節點[23]。使用GIS Server集群能夠快速地增加或刪除GIS計算節點,因此將GIS Server構建成集群是具備可擴展性的基礎。
在具有可擴展性的GIS應用中,通過負載均衡和自動伸縮來保證GIS應用運行達到最佳性能。對于ArcGIS Server Site來說,負載均衡是指將接收到的GIS服務請求均衡地分發給集群中各GIS節點;自動伸縮是指依據系統當前的負載,自動增加或減少GIS計算節點[24]。兩者實現的前提是對GIS Server進行有效監控。在云計算平臺中,主要是監控虛擬機的CPU、內存以及存儲、網絡等資源,并提供統計、查詢、預測和預警等接口[25]。
負載均衡的目的是將服務請求均衡地分發給一組GIS Server應用服務器,充分利用所有GIS Server的處理能力,以獲取更短的GIS服務響應時間[26]。當接收到需要使用GIS服務的請求時,Web Server將日志記錄在服務器站點中,日志內容包括哪些服務器處于空閑狀態,哪些處于忙碌狀態,這些日志為負載均衡提供數據支持[27]。負載均衡功能可以由以下組件之一來實現[18]:ArcGIS Server的Web Adaptor組件;反向代理服務器,如Apache Server、Nginx等;專業負載均衡軟件,如LVS、Pound等。
負載均衡的模式有以下幾種:
(1)集群節點數較少的單集群模式。選用Web Adaptor作為負載均衡組件,由其直接連接GIS Server集群。Web Adaptor采用輪詢算法,將請求轉發給集群中的GIS Server[18]。
(2)集群節點數較多的單集群模式。選用反向代理服務器或專業的負載均衡軟件作為負載均衡組件,根據日志記錄中集群的當前負載狀態,將服務請求轉發給負載較低的GIS Server。這樣結構更具靈活性,可以考慮更多的自定義算法和條件,如加權輪詢算法、動態輪詢算法[28]。
(3)多集群模式。在每個集群內進行負載均衡,選擇Web Adaptor與其他負載均衡組件相結合的方式,進行兩層式負載均衡,即集群間負載均衡與集群內負載均衡。
三種ArcGIS Server負載均衡模式如圖5所示[29]。

圖5 三種ArcGIS Server負載均衡模式
動態擴展的目的是將集群的伸縮自動化,節省服務資源管理的成本。動態擴展需要實時監聽GIS Server集群的負載情況,并設定觸發條件與相應的擴展操作,以便于達到條件時自動進行擴展操作[22]。觸發條件通常是監聽基于時間段的統計數據,例如CPU利用率達到閾值且持續一定的時間[30]。動態擴展的過程是:運行在云計算平臺上的監控程序,周期性地查詢計算節點CPU、內存等資源的性能,并根據設定的觸發條件進行統計;當結果達到閾值時,向擴展程序傳遞相應的信號;擴展程序隨即實施增加或刪除節點的操作,以完成一次動態擴展[31]。
2.3 ArcGIS Server高可用性
在云計算平臺上,無法時刻保持每個節點持續有效。當一個節點出現故障時,如果該節點沒有其他多余的節點來替代的話,這種現象被稱為單點失效[32]。單點失效現象的發生是無法避免的,只能做到盡量減少它的發生概率[33]。為此,在關鍵節點上要保持一定的冗余。可以通過構建高容錯性和高可用性集群或者平均分配流量的負載均衡集群兩種方法來實現系統的高可用性[34]。ArcGIS Server Site包含若干個集群,可以通過對站點結構的分析選擇在站點內或站點間提高容錯率,使得云計算平臺更容易維護[35]。
在ArcGIS Server Site中,Web Server、Web Adaptor和GIS Server三個組件都可以進行高可用部署。
當ArcGIS Server Site中節點較少時,為了實現GIS站點間的高可用部署,可同時架設兩個ArcGIS Server Site,可以選擇以下任一方法來實現[36]:
(1)主備切換方案。構建兩個GIS站點,一個作為主站點,另一個作為備用站點。故障監控交由站點外的監控程序來完成,當網絡故障或GIS服務發生故障時,發出故障信號,主站點自動切換至備用站點。
(2)在GIS站點間架設負載均衡組件。兩個站點同時對外提供服務,由負載均衡組件采用輪詢等算法分配GIS站點。同時進行健康檢查,只將GIS服務的請求分發給能正常工作的站點。
GIS站點間的高可用部署如圖6(1)和(2)所示。
當ArcGIS Server Site內節點較多時,可以考慮站點內的高可用部署[29]。該過程的實施分為兩個部分:
(1)對Web Server和Web Adaptor來說,通常采用主備切換方案。部署時,選擇一個服務器節點作為主服務器,并追加一個備用服務器節點,通過監控程序不斷進行健康檢查[37]。一旦主服務器被檢測到發生故障,則自動切換至備用服務器繼續工作,同時對主服務器進行災難恢復。
(2)對GIS Server來說,確保GIS Server集群中的計算節點不少于兩個。一般由負載均衡組件進行健康檢查,將GIS服務請求分發給健康的GIS節點,而當GIS節點發生故障時,通過動態擴展自動增加新的節點,刪除發生故障的節點,從而保證GIS云平臺的高可用性。
ArcGIS Server Site內的高可用部署如圖6(3)所示[29]。

圖6 ArcGIS Server站點高可用部署
云計算技術為ArcGIS for Server提供了具有可擴展性、高可用性的GIS服務資源。利用該技術,基于ArcGIS for Server的GIS應用可動態擴展。同時通過構建GIS Server集群,使GIS應用能按需提供GIS服務資源,并從容應對服務需求量的變化。在進行大數據量、復雜繁瑣的GIS服務處理時,能動態增加GIS站點以達到快速響應GIS服務的目的;而在服務請求減少時,能自動縮減GIS節點以達到節省計算資源的目的。在不同規模的站點條件下,通過保持Web Server、GIS Server或GIS站點的適度冗余,利用云計算快速調度資源的能力,可以在短時間內進行GIS節點的切換或修復,提升GIS應用的容錯率,從而保證了GIS服務的可用性。
[1] 林德根,梁勤歐.云GIS的內涵與研究進展[J].地理科學進展,2012,31(11):1519-1528.
[2] Mell P,Grance T.The NIST definition of cloud computing[J].Communications of the ACM,2010,53(6):50.
[3] 陳 康,鄭緯民.云計算:系統實例與研究現狀[J].軟件學報,2009,20(5):1337-1348.
[4] 熊錦華,虎嵩林,劉 暉.云計算中的按需服務[J].中興通訊技術,2010(4):13-17.
[5] 甄福全.基于公有云平臺Arcgis Online的WebGIS實現[J].哈爾濱師范大學自然科學學報,2015,31(3):75-78.
[6] 林 泊,周明輝,劉天成,等.一個J2EE應用服務器的Web容器集成框架[J].軟件學報,2006,17(5):1195-1203.
[7] Geronimo的遠大前程[J].程序員,2005(11):27-28.
[8] Geronimo整合系列之Tomcat[EB/OL].2010-01-28.http://www.ibm.com/developerworks/cn/opensource/os-cn-geronimo-tomcat/index.html.
[9] Apache Foundations. The apache tomcat project[EB/OL].2006.http://jakarta.apache.org/tomcat/.
[10] 范國闖,魏 峻,鐘 華,等.支持EJB動態分布的組件遷移模型與算法[J].軟件學報,2004,15(3):403-413.
[11] Roman E,Oberg R.The technical benefits of EJB and J2EE technologies over COM+ and Windows DNA[J/OL].1999-01-24.http://java.sun.com/products/ejb/pdf/j2ee_dnatwp.pdf.
[12] 郭成城,晏蒲柳.一種異構Web服務器集群動態負載均衡算法[J].計算機學報,2005,28(2):179-184.
[13] 高 昂,慕德俊,胡延蘇.Web集群的區分服務與負載均衡策略研究[J].電子與信息學報,2011,33(3):555-562.
[14] 趙 鑫,王 偉,張文博,等.共享式Web應用服務器集群的資源整合方法研究[J].計算機科學與探索,2013,7(1):25-34.
[15] Buyya R.High performance cluster computing:architectures and systems(volume 1)[M].Upper Saddle River,NJ,USA:Prentice Hall,1999.
[16] 吳少剛,陳曉玲.J2EE應用服務器集群性能研究[J].計算機工程與設計,2007,28(18):4410-4412.
[17] 王鳳領.基于云計算的WebGIS分析構架研究[J].計算機技術與發展,2014,24(3):113-116.
[18] ArcGIS Server站點的內部[EB/OL].2016-11-28.http://server.arcgis.com/zh-cn/server/latest/administer/windows/inside-an-arcgis-server-site.htm.
[19] 劉曉慧,劉永偉,劉 永.ArcGIS Server分布式體系結構研究與服務器部署策略[J].測繪科學,2011,36(4):205-207.
[20] Tiemens G.Hands-on experiences:migration to ArcGIS for server 10.1[M].[s.l.]:[s.n.],2012.
[21] 范協裕,任應超,楊崇俊,等.基于集群技術的可伸縮云GIS服務平臺研究[J].計算機應用研究,2012,29(10):3736-3739.
[22] 林允博.AWS云端企業實戰圣經:亞馬遜如何構造云端計算[M].北京:清華大學出版社,2012:184-186.
[23] Components of ArcGIS for server[EB/OL].2015.http://resources.arcgis.com/en/help/main/10.2/index.html#/na/01540000035p000000/.
[24] Fan X,Wu S,Ren Y,et al.An approach to providing cloud GIS services based on scalable cluster[C]//21st international conference on geoinformatics.[s.l.]:IEEE,2013:1-4.
[25] 侯永東.虛擬化云平臺監控系統的研究與實現[D].北京:北方工業大學,2014.
[26] 黃 穎,郭明強,羅顯剛,等.WebGIS中GIS服務器負載均衡研究與實現[J].測繪科學,2009,34(1):182-183.
[27] Nasser H.Administering ArcGIS for server[M].[s.l.]:Packt Publishing,2014:150-153.
[28] 楊明極,王 鶴,趙加鳳.基于CPU和內存利用率的負載均衡算法的研究[J].科技通報,2016,32(4):160-164.
[29] ArcGIS Server多機站點配置[EB/OL].2016.http://server.arcgis.com/zh-cn/server/latest/administer/windows/multiple-machine-deployment-with-arcgis-web-adaptor.htm.
[30] 曹全龍,唐 權,楊程瑤.基于ArcGIS的云GIS平臺設計方案研究[J].測繪與空間地理信息,2014,37(10):36-38.
[31] Song W W,Jin B X,Li S H,et al.Building spatiotemporal cloud platform for supporting GIS application[J].ISPRS Annals of the Photogrammetry,Remote Sensing and Spatial Information Sciences,2015,2(4):55.
[32] 林曉東,劉心松.高可用性系統結構的研究[J].計算機應用,1997,17(4):15-18.
[33] 羅軍舟,金嘉暉,宋愛波,等.云計算:體系架構與關鍵技術[J].通信學報,2011,32(7):3-21.
[34] 王良清.集群和負載均衡技術在GIS數據中心的應用研究[J].測繪通報,2013(8):74-76.
[35] 陳 波,張曦煌.基于分層與容錯機制的云計算負載均衡策略[J].計算機應用,2013,33(11):3155-3159.
[36] ArcGIS Server單機高可用性(主動-被動)部署[EB/OL].2016.http://server.arcgis.com/zh-cn/server/latest/administer/windows/single-machine-high-availability-active-passive-deployment.htm.
[37] 侯超平,李春锃.云計算的高可用性實現技術探討[J].山東工業技術,2016(2):269-270.
Investigation on Architecture of a GIS Cloud Computing Instance
CHEN Gang-rui,GE Ying,ASKAR Ablimit,ZHAO Hui-hui
(School of Earth Science and Engineering,Hohai University,Nanjing 211100,China)
Cloud Computing has the reliable,available and scalable characteristics,which can rapidly allocate cloud service resources and provide elastic and on-demand GIS services.The infrastructure of a typical GIS Cloud Computing Instance has been analyzed.The technical principle of the Web Application Servers has been presented.The offered functionality of each component container in Cloud Computing has been revealed.Furthermore,in terms of the characters of high availability and scalability,the technologies of GIS Cloud Computing Instance have been specifically discussed.How Cloud Computing provides the adaptive computing resources and controls the fault tolerance of this system instance for GIS services through the load balancing and dynamic scalability has been surveyed.Cloud Computing enables GIS applications to maintain sustainability of its high performance and high resource utilization once the number of users and the use of geospatial data increase.Therefore by means of the technology of Cloud Computing GIS services can automatically obtain elastic computing resources and build efficient and stable GIS applications.
GIS Cloud Computing Instance;ArcGIS Server Application Servers;scalability;high availability
2016-07-13
2016-11-04 網絡出版時間:2017-04-28
國家自然科學基金資助項目(41071347);云南省重大科技專項—新能源(2013ZB006);衛星測繪技術與應用國家測繪地理信息局重點實驗室課題(KLSMTA-201509)
陳剛銳(1991-),男,碩士研究生,研究方向為WebGIS;葛 瑩,博士,教授,通訊作者,研究方向為GIS云計算、空間統計學、產業集聚等。
http://kns.cnki.net/kcms/detail/61.1450.TP.20170428.1703.066.html
TP301
A
1673-629X(2017)06-0099-07
10.3969/j.issn.1673-629X.2017.06.021