万维网GIS的体系结构


发布日期 : 2017-11-20 08:02:57 UTC

访问量: 275 次浏览

GIS系统的体系结构主要可以分为三种:一种是集中模式,
一种是客户/服务器(Client/Server)模式,另一种是Web/因特网模式。

集中模式的GIS系统为:终端完成两种操作,
即:(1)接受用户的输入,然后通过网络把输入发送给GIS服务器;
(2)接受GIS服务器的处理结果,格式化并展现给用户。
GIS服务器相应地需要完成三种操作:(1)通过网络接受终端的输入,
处理终端输入;(2)格式化处理结果,并传送给终端;(3)维护数据库。

由此可知,在集中模式下的GIS系统,顾名思义,
信息库的存储、浏览、査询、检索、维护等都“集中”于GIS服务器,
服务的提供完全依赖于GIS服务器。所以,这种模式对服务器的速度、
可靠性等要求极高,一般需要专门的服务器作为GIS服务器,
这就提高了系统的造价。但它也有—个优点:系统结构相对简单。

客户/服务器模式的GIS系统为:客户端完成三种操作,
即:(1)管理用户接口,处理应用逻辑;(2)产生数据库请求,
并向GIS服务器发送请求,然后从GIS服务器接受结果;
(3)格式化结果,并发布给用户。GIS脤务器相应的功能为:
(1)从客户机接受数据库请求;(2)处理数据库请求;
(3)格式化结果,并传送给客户机;(4)维护数据库。

由此可知,在客户/服务器模式下的GIS系统,客户机执行前端处理,
服务器执行后端处理。它把整个系统的负担在客户/服务器间进行适当的分配,
在客户端运行应用程序符合实际应用多样性的需要,
而对于整个系统的基础---数据库则集中于服务器,便于数据库的维护。
这种结构具有较强的数据操纵和事务处理能力,
以及较强的数据的安全性和完整性约束,因此,
这种模式的GIS系统是比较合理的。但是,
由于客户/服务器的结构开发和管理成本越来越高,
其客户端变得越来越臃肿,系统的使用也较复杂。

Web/因特网模式GIS系统的客户端和服务器所完成的功能
基本上与Client/Server模式下的功能一致,
它实质上是Client/Server技术与因特网技术相结合的成果。
这种模式不仅利用了基于Web的因特网结构的简便和灵活性的特点,
而且应用Client/Server技术大大地强化了其事务处理和安全性、
完整性约束能力,从而实现了真正业务相关的WebGIS。
较早的WebGIS开发方法基采用CGI
(Common Gateway Interface——通用网关接口)
和ServerAPI(扩充的CG1工具)来建立应用程序和WebGIS服务器之间的接口,
其实现方式如前文所述。但是典型的CGI操作方式非常繁琐、低效。
而且,CGI机制本身也有很大的缺陷,它对每个TCP/IP的请求,
都生成一个CGI进行处理,随着同时的TCP/IP连接数目的增加,
Web服务器会过载。更糟的是,生成的许多CGI脚本是解释性的shell脚本,
比编译后的代码的运行速度要慢得多。
经过各种扩充的CGI工具也无助于问题的解决,
因为各种方案都需要通过HTTP和WWW服务器来协调客户机和WebGIS之间的交互,
并且交互的基本手段仍是HTML表格。所以,
这种方式对于需要大通信量的WebGIS系统显然是不合适的。

为此,1996年,Microsoft公司在OLE2.0的基础上提出了
一个解决方案——DCOM/ActiveX技术。DCOM/ActiveX规范使得
客户机对象和服务器对象之间能够直接对话,
不再受CGI/HTTP瓶颈的约束。其具体实现方式是:
以VisualC++或Visual Basic等工具生成对象;在服务器上注册对象;
利用VBScript脚本或其他工具把对象以ActiveX控件的形式嵌入Web网页;
指定ActiveX控件的运行方式——客户端运行/服务器运行,合理分配系统负荷。

事实上,DCOM/ActiveX技术只是针对CGI/HTTP瓶颈问题而提出的解决方案
——“ObjectWeb”技术的一个具体实现。另外还有一个解决方案
是Sun公司提出的JavaApplet技术。JavaApplet区别于DCOM/ActiveX技术
的一个明显特点是它从Java继承来的跨平台特性,
但其代价是速度的相对减慢。
目前这两种方案都在争取成为“Object Web”技术的标准。

由上述分析可知,WebGIS设计的关键在于ActiveX控件的设计。
因此必须注意控件的划分——控件间相关最小,控件内相关最大;
控件实现时要追求代码的高效;控件的运行方式的合理设计。
此外,控制客户端对象对数据库的存储权限,
客户端地理信息的发布格式——矢量图/栅格图也是值得考虑的关键技术。

WebGIS技术是GIS系统与因特网技术相结合的成果,
通过利用因特网技术,GIS能更灵活方便地为用户服务。
早期的WebGIS由于因特网技术交互能力的局限,
并没有太多地利用Client/Server技术,仅仅是一个信息发布中心;
现在,利用“ObjectWeb”技术才真正地把这两种技术结合在一起,
从而发挥出了各自的优势。

WebGIS必将带领GIS技术进入一个革新的时期。