搭建一個GIS系統,為了能同時適應C/S和B/S架構,建議是做成自己的地圖服務api方式,這樣,一個或多個系統,就能通過統一的地圖服務接口提供,而通信可以采用http的resful方式,而一個webGis系統,其基本環境,無外乎是:空間數據庫+GIS中間件+WEB MAP SERVER+GIS EDITOR+瀏覽器CLIENT,引用arcgis server的系統架構圖如下:
對於一般的C/S系統,很多時候就是兩層架構:客戶端+數據庫,而一般B/S系統,簡單的也是這兩層,但更多的是客戶端+Web Server+數據庫,這種方式安全性、通用性和擴展性更好(諸如sql注入等自行谷哥度娘),而webgis就是在三層基礎上再多了個GeoServer,其滿足OGC規范,提供Web地圖服務(WMS)、Web要素服務(WFS)、Web覆蓋服務(WCS)面向空間影像數據。
而我最終的選型方案以下,至於什么原因,后續會補充介紹到:
1、使用Udig等地圖處理軟件生成空間數據。
2、把生成空間數據導入postgreSQL,以提供給GeoServer等實現地圖服務,和提供給NTS操作處理。
3、通過瀏覽器客戶端,即arcgis api for Silverligh來訪問地圖服務,繪制圖元,展示信息,實現地圖交互。