ArcIMS服務(wù)器層組件是其架構(gòu)最核心的部分,它包含了空間服務(wù)器、虛擬服務(wù)器和ArcIMS服務(wù)三種對象和概念。其中,空間服務(wù)器是ArcIMS產(chǎn)生地圖數(shù)據(jù)的最關(guān)鍵對象,而虛擬服務(wù)器則是管理前者的一個虛擬概念,它們的最終目標(biāo)就是為了新建某種類型的ArcIMS服務(wù)。
ArcIMS的空間服務(wù)器是產(chǎn)生地圖圖像文件和與地圖相關(guān)信息的核心對象,當(dāng)它收到一個ArcXML請求時,會調(diào)用一個或多個函數(shù)來進(jìn)行相應(yīng)的處理。每個這樣的函數(shù)都可以被看作是空間服務(wù)器的一種組件,這樣的組件種類很多,包括以下幾種:
Ø Image:根據(jù)ArcIMS Author產(chǎn)生的地圖配置文件AXL生成地圖影像文件;
Ø ArcMap Image:根據(jù)用ArcMap產(chǎn)生的地圖配置文件MXD生成地圖影像文件;
Ø Feature:產(chǎn)生地圖要素流;
Ø Query:根據(jù)搜索條件尋找匹配的要素;
Ø Geocode:執(zhí)行地址匹配運算;
Ø Extract:將選擇的地圖要素轉(zhuǎn)換為Shapefile文件;
Ø Metadata:發(fā)布和搜索地圖元數(shù)據(jù);
Ø Route:必須安裝可選的RouteServer擴(kuò)展才能使用,用于計算兩點或多點之間的路徑,但其數(shù)據(jù)是美國的,不適合國內(nèi)使用;
Ø SDCGeocode:基于RouteServer數(shù)據(jù)進(jìn)行地址匹配操作;
那么,一個空間服務(wù)器對象是由哪些組件組成的呢?這種組成方式分為兩種,一是除了ArcMap Image組件之外的其它所有組件組成的空間服務(wù)器;另一種則是僅由ArcMap Image組件組成的空間服務(wù)器。其關(guān)系如圖 2?2所示:
圖 2?2 空間服務(wù)器的組件
ArcIMS空間服務(wù)器在本質(zhì)上是一個運行于計算機(jī)上的程序進(jìn)程aimsserver.exe。在Windows平臺中,我們可以在任務(wù)管理器的進(jìn)程列表中找到它。ArcIMS默認(rèn)安裝時,僅有一個非ArcMap Image式空間服務(wù)器進(jìn)程存在,如果在Windows、Solaris和Linux平臺上安裝ArcIMS時選擇了ArcMap Server擴(kuò)展插件,則會有另外兩個ArcMap Image式空間服務(wù)器進(jìn)程存在,即計算機(jī)上將同時存在三個aimsserver.exe進(jìn)程。Aimsserver.exe進(jìn)程也可以通過增加server,提高地圖處理和顯示能力。
盡管如此,空間服務(wù)器進(jìn)程并不能被開發(fā)人員直接訪問,我們對其的管理僅局限在添加和移除操作上,而對空間服務(wù)器的大部分交互工作都是通過虛擬服務(wù)器進(jìn)行的。
假設(shè)我們有2臺電腦(即ArcIMS中的Server),每臺機(jī)器上有5個空間服務(wù)器進(jìn)程,由于不能與空間服務(wù)器進(jìn)程直接進(jìn)行交互,我們需要找到一種更好的方式對這10個進(jìn)程進(jìn)行管理,這可以使用ArcIMS提出的虛擬服務(wù)器概念。
比起空間服務(wù)器這類實際存在的對象(進(jìn)程),虛擬服務(wù)器是一個純粹概念上的管理工具。由于虛擬服務(wù)器的類型劃分是根據(jù)空間服務(wù)器組件的功能作為依據(jù),因此,每一個空間服務(wù)器都可以屬于一個或多個虛擬服務(wù)器。這其中唯一的例外是ArcMap Server上的空間服務(wù)器,它是在安裝ArcIMS時就指定的。在圖 2?3中,兩個ArcIMS空間服務(wù)器都由一個名為ImageServer1的虛擬服務(wù)器進(jìn)行管理。
圖 2?3 一個虛擬服務(wù)器管理兩個空間服務(wù)器
ArcIMS中有多少種類型的虛擬服務(wù)器呢?空間服務(wù)器有9類組件,因此也就有9種不同的虛擬服務(wù)器。其中公共的有ImageServer1、ImageServerArcMap1、FeatureServer1、MetadataServer1四種;而私有的則是QueryServer1、GeocodeServer1、ExtractServer1、RouteServer1和SDCGeocodeServer1五種。圖 2?4展示了nbjbt這臺計算機(jī)上存在的7種虛擬服務(wù)器,缺失的兩種是因為沒有安裝必要的ArcIMS擴(kuò)展插件。
圖 2?4 ArcIMS的虛擬服務(wù)器
虛擬服務(wù)器要么是公共的,要么是私有的。當(dāng)我們使用管理工具時,只有公共虛擬服務(wù)器可以暴露給用戶。我們可以選擇產(chǎn)生或改變服務(wù)。但私有虛擬服務(wù)器的工作隱藏于幕后,它們只是在影像或要素服務(wù)需要時才被調(diào)用的。
如圖 2?5所示,該對話框用于新建一個虛擬服務(wù)器:
圖 2?5 新建一個虛擬服務(wù)器
在新建虛擬服務(wù)器的過程中,Server Type有四種選擇,除了ImageServer-ArcMap外,其它三種虛擬服務(wù)器的Instances屬性都是2,即默認(rèn)有兩個實例,而ImageServer-ArcMap只有1,即單個實例。同時,我們還可以在不同的Server上部署虛擬服務(wù)器,這個過程只需點擊“New Server…”按鈕選擇一臺Server即可,這樣就可以根據(jù)荷載的情況在多臺服務(wù)器硬件上部署虛擬服務(wù)器了。增加虛擬服務(wù)器,可以間接提升ArcIMS部分功能的處理能力。
如對本文有疑問,請?zhí)峤坏浇涣髡搲?,廣大熱心網(wǎng)友會為你解答?。?點擊進(jìn)入論壇