WebGIS实现技术
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
例如,为了让User存取数据库中的信息,CGI 可以被用来连接Server中的数据库,在系统中扮演 桥梁的角色。
1997年ESRI推出了MapObjects Internet Map Server,使用HTML将客户端的请求传给Web Server,而Web Server则通过专用的CGI接口与 GIS Server连结,GIS Server承担了所有的查询、 计算工作,将结果构建成一个HTML文件传回给 Web Server,再将HTML文件传给客户端浏览器。
(3)数据处理在服务器端进行,容易造成服务器 端负载过重。
➢ 市场上推出的WebGIS软件中,利用这一原理实 现的软件主要有:
➢ 美国ESRI公司早期的WebGIS平台ArcView Internet Map Server (ArcView IMS)和MapObjects IMS,Mapinfo早期的Internet/Intranet解决方案 Maplnfo Proserver等。
(3)通过一组简单的环境变量或命令行传递参数, 这种调用程序的方法易于理解和实现。
(4)CGI程序以一个独立进程方式运行,和Web 服务器完全隔离,有错误的CGI程序很难损害服务 器内部的完整性。
(二)基于CGI模式的WebGIS的缺点
(1)网络传输负担重。 ➢ 在GIS的服务器端和客户端空间数据的传输只能 是,JPEG或GIF图像,不能有效地进行空间数据 的可视化操作和分析;
➢ 客户端不具有数据管理模块,因此不能够实现 现有状态的GIS空间数据传输协议; ➢ 若再次请求已经请求过的空间数据,要经过同 样的数据传输过程,多次数据传输之间没有联系, 因而网络的传输负担较重。
(2)运行速度过慢。 ➢ 原因在于CGI根据浏览器的HTTP请求激活响应 进程,
➢而每一个请求对应一个进程, ➢ 当有多用户同时发出请求时, ➢ 创建进程的负载和大量并发执行的CGI程序所耗 费的潜在资源会造成系统运行速度下降,从而使系 统效率降低。
(一)基于CGI模式的WebGIS的优点
(1)CGI程序的跨平台性能极佳。 ➢ 几乎不需任何修改就可移植到大部分Web服务 器上。 ➢ 另外,很多应用都是用过程语言(如Perl)编写的, 可以方便的移植到许多计算机平台上。
(2)具有客户端小,处理大型GIS分析的功能, 并且可充分利用已有的GIS资源,因为所有的GIS 操作都是由GIS服务器完成的。
利用这种CGI方法,只要使用者在浏览器上按 一下,信息就通过网际网络传回到Web Server上, 然后由CGI接口将此信息透过IPC传至后端的GIS 软件。
例如,可以要求GIS软件将地图中的某个地区 放大,然后将放大后的地图传给使用者端。
这种方法的优点在于,可以利用商业化GIS软 件产生出高品质的地图。事实上,GIS软件的很多 功能都可以被利用。
根据CGI接口的特点,GIS CGI技术可分为以 下两类:
1.CGI激活图形产生器之方式运作
一个典型的例子是美国ESRI公司的 MapObjects Internet Map Server。
它是由开发者制作一个简单的图形产生器 应用程序(Application program;AP)经由CGI程 序,可以根据命令行参数产生各种不同的地图。
CGI式的Web GIS—以玉山国家公园电子文化与自然资源地图为例
2. CGI激活后端GIS软件
很多GIS软件是运用图形使用者接口(GUI), 用“事件”(Event)的方式驱动的,一旦激活, 就可以一直运作等待触发事件。
这种系统有许多优点,而且浏览器也是利用 Baidu NhomakorabeaUI接口由事件驱动的。
一个浏览器上的事件,透过CGI接口很容易传 到后端GIS软件上,CGI接口和后端GIS软件的信 息交换是透过IP控制协议(IPC)来完成。
二、ServerAPI技术在WebGIS中的应用
ServerAPl服务器应用程序接口技术,是为了 克服CGI方式的效率低下而开发出来的扩充的CGI 工具,其基本原理与CGI类似,不同的是CGl程序 可以单独运行,而由于ServerAPI应用程序是Web 服务器进程的组成部分,所以必须在特定的服务 器上运行。
但这种方法仍有许多不足之处。
首先,很难同时执行多个CGI程序;
其次,这种方法需要GIS软件一直处于运作状 态,这不仅要求GIS软件所在的Server一直在激活 状态,而且也消耗不少计算机资源。
ESRI的ArcView Internet Map Server就是这种 系统运作方式。
ArcView Internet Map Server
基于CGI的WebGIS的工作原理是:
Web浏览器用户发出URL及GIS数据操作请求到 服务器上, Web服务器接受请求后,通过CGI脚本,将用户 的请求传送给GIS服务器, GIS服务器接受请求,对GIS数据进行处理(如放 大、缩小、漫游、查询、分析等),将操作结果形 成GIF或JPEG图像, 最后,GIS服务器将GIF或JPEG图像通过CGI脚 本、Web服务器返回给Web浏览器并显示。
(三)CGI技术分类
由于CGI是Web Server上可执行的程序,任何 人要与Web Server进行沟通,都可以透过CGI接口。
基本上所有的计算器语言都可以用来开发CGI 接口,最常用的几种包括C、C++、Perl和VB。 Web一出现,CGI技术很快就被用于建构能产生动 态地图的Web网站。
第五章 WebGIS实现技术
现有基于B/S模式的网络GIS主要分为两类: ➢ 基于服务器的网络GIS(Server-side) ➢ 基于客户机的网络GIS(Client-side)。
服务器端的互联网GIS的构造模式有CGI
模式、Server API模式、ASP 模式等;
而基于客户机端的互联网GIS的构造模式
有Plug-in模式、GIS Java Applet、 GIS ActiveX控件等。
一、CGI技术在WebGIS中的应用
CGI(common gateway interface)通用网关接 口是较早应用于WebGIS开发的方法。
它是Internet服务器与应用程序之间的接口标准, 在Hypertext文件与Web服务器应用程序之间传递 信息,将Web服务器和数据库服务器结合起来,实 时、动态地生成HTML文件。