首页 百科知识 业务逻辑部件

业务逻辑部件

时间:2022-10-18 百科知识 版权反馈
【摘要】:它使用ArcXML在Web服务器和ArcIMS应用服务器之间传递信息。在Servlet连接器的基础上,ArcIMS包含处理WMS请求的网络地图服务连接器,它允许任何支持开放地理信息系统的WMS规范兼容的浏览器或客户端使用ArcIMS服务。ArcIMS空间服务器还有4个功能:查询服务允许对数据库进行搜索,地理编码服务进行地址匹配操作,提取服务允许对数据进行裁剪提取子集,元数据服务提供数据的元信息发布功能。空间服务器是ArcIMS业务逻辑的中枢。
业务逻辑部件_网络地理信息系统

7.1.2 业务逻辑部件

1.Web服务器

Web服务器使用超文本传输协议(HTTP)处理来自客户端的请求。Web服务器递交一个请求到相应的应用程序并返回响应到发出请求的客户端。Web服务器不包含于ArcIMS。

Web服务器接收客户端请求,并创建网页在客户端发布。尽管Web服务器包括了许多硬件,然而发布网页的Web服务器软件也是必不可少的。完全支持ArcIMS的Web服务器软件有:Apache,Microsoft Internet Information Server(IIS)和Netscape Enterprise Server等。

2.应用服务器

ArcIMS应用服务器是处理输入请求负载平衡的程序,作为一种后台程序(NT服务/UNIX线程)来运行。此外,它还能提供跟踪地图服务及地图服务运行所在ArcIMS空间服务器的目录。应用服务器正是在这些信息的基础上,合理分配空间服务器。多个Web服务器可以同时和应用服务器进行通信。在分布环境下,应用服务器可以安装在与Web服务器不同的机器上。

如图7-2所示,由于应用服务器只能处理以ArcXML写入的请求,在递交ArcXML请求给应用程序服务器之前,连接器需要通过ArcXML直接或转换成第三方语法,如ColdFusion、ASP、NET或Java Server页面(JSP)。

3.应用服务连接器

ArcIMS应用服务连接器将Web服务器和ArcIMS应用服务器连接在一起。ArcIMS Servlet连接器是ArcIMS的默认连接器。它使用ArcXML在Web服务器和ArcIMS应用服务器之间传递信息。ArcIMS有如下5个应用服务连接器:

①Servlet连接器。Servlet连接器是ArcIMS默认的连接器。此连接器作为客户端应用程序生成ArcXML的连接通道,使用Servlet引擎为Web服务器和应用服务器提供请求和响应的转发,可应用于所支持的操作系统平台。在Servlet连接器的基础上,ArcIMS包含处理WMS请求的网络地图服务(WMS)连接器,它允许任何支持开放地理信息系统(OGC)的WMS规范兼容的浏览器或客户端使用ArcIMS服务。

②ColdFusion连接器。ColdFusion连接器在递交请求给ArcIMS应用程序服务器之前需要处理ColdFusion Web服务器的请求,把ColdFusion Web服务器的请求转化为ArcXML请求。它可用于Windows和Solaris操作系统平台。

图7-2 ArcIMS应用服务器

③ActiveX连接器。ActiveX连接器是一个遵循组件对象模型的DLL,它可用于COM应用程序,例如微软的ASP应用程序。ActiveX连接器只适用于Windows操作系统平台。

④.NET链接。.NET链接是一个开发工具,促进ArcIMS在.NET平台的应用。它是由一系列类和函数组成的,用来建立ArcIMS应用程序服务器连接(HTTP或是TCP连接)。.NET链接只能应用于Windows操作系统平台。

⑤Java连接器。Java连接器是一套JavaBean组件,使用户能够创建客户端和服务器应用程序,定制Servlets和JSP应用。它还包括支持JSP应用的JSP标签库。它可在所有支持操作系统平台中应用。

4.空间服务器

空间服务器是ArcIMS的主要处理中心。空间数据在ArcIMS空间服务器进行处理,并将输出的地图与数据通过连接器返回给Web服务器。如图7-3所示,空间服务器提供6大功能:栅格、要素、查询、地理编码、裁切和元数据服务,其基本功能为栅格及要素服务。栅格服务器生成地图影像文件,如JPEG数据文件;而要素服务器则生成地图要素流,如shapefile格式的数据流。ArcIMS空间服务器还有4个功能:查询服务允许对数据库进行搜索,地理编码服务进行地址匹配操作,提取服务允许对数据进行裁剪提取子集,元数据服务提供数据的元信息发布功能。

空间服务器是ArcIMS业务逻辑的中枢。空间服务器里面运行着多个服务进程,这些服务进程访问数据和生成地图,然后通过Web服务器把这些地图发送到客户端浏览器上,访问者就可以得到请求结果。ArcIMS空间服务器主要功能是根据用户请求动态生成地图,通过虚拟服务器机制来组织和实现。

使用ArcIMS管理器可以在本地机器上或运行ArcIMS空间服务器的远程机器上添加空间服务器。由于空间服务器负载远大于其他部件,所以当考虑负载均衡时,应用服务器和监视器以及任务指派器所占资源均可忽略不计,最需要考虑的因素是空间服务器中运行实例的总数。

图7-3 ArcIMS空间服务器

5.空间服务器实例

空间服务器实例是个能够一次性处理一个请求的Windows进程或Unix线程。每个空间服务器服务部件,例如栅格服务由一个或多个实例组成。在默认情况下,当空间服务器首次建立时每个服务被分配两个实例。ArcMap服务是例外,因为它是由两个空间服务器实例进程组成的。额外实例被分配到各个空间服务器,以用来处理管理功能。根据需要,实例可以被添加或删除。图7-4提供了一个为各个服务器类型分配实例概述。

6.地图服务

在使用设计器创建网站时必须创建并启动地图服务。所谓地图服务就是在AXL文件中定义将要发布的数据视图。地图服务是运行在空间服务器上的应用程序,可以将地图服务作为空间服务器入口来看待,空间服务器只对运行在其上的地图服务提供相应的服务。对于一个地图服务而言,地图配置文件是必要的。当发布一个地图服务时,须指派地图服务给ArcIMS所支持的两种类型的地图服务。

图7-4 服务实例分配示意图

①图像地图服务。它用ArcIMS图像表现能力为你的地图做了一个“快照”发送到请求的客户端。这个“快照”是以一种压缩的图像图式{JPEG、PNG、或GIF}发送的。每次客户端有新的请求时都会产生一幅新的图片。图像地图服务还可以发送压缩的栅格数据

矢量地图服务。它把矢量要素以流的方式发送给请求的客户端。矢量要素使得高级的功能在客户端实现,比如为要素加标注、符号化、地图提示、空间要素选择等。这种地图服务允许客户在客户端改变地图的表现形式。

7.虚拟服务器

因为可以有多个空间服务器在多台机器上运行,因而需要一种机制来管理这些空间服务器和运行在它们之上的服务。ArcIMS使用虚拟服务器的概念来管理一个站点。虚拟服务器是能够提供某项特定功能的多个空间服务器组合。假设实际安装的ArcIMS空间服务器只有一台,那么所谓“一群”实际上可能是指一个空间服务器。每个地图服务都分配一台虚拟服务器,可以通过添加虚拟服务器来平衡任务分配,或在ArcIMS空间服务器发生故障时提供备份。当具有两个或两个以上虚拟服务器,由于请求堵塞而中断了其中某个服务器时,系统服务并不会被中断(虽然速度会稍稍减慢)。所以合理使用虚拟服务器可以建立稳定而又可靠的网站。

图7-5展示了两个ArcIMS虚拟服务器:影像虚拟服务器和要素虚拟服务器。一个影像虚拟服务器把来自两个空间服务器的影像服务器实例组合起来,一个要素虚拟服务器把来自两个空间服务器的要素服务器实例组合起来。元数据、ArcMap、地理编码、数据提取和查询服务器等也能组合在一起来创建虚拟服务器。

图7-5 空间服务器组合成虚拟服务器

8.把用户请求分配给空间数据服务器实例

用户请求分配给空间数据服务器实例包含以下4个步骤:

①当管理员按下服务启动按钮时,一条请求就从管理员处发送到图7-6中①所示的Servlet连接器。

②如图7-6中②所示,Servlet或Java连接器将请求发送到应用服务器。

图7-6 ArcIMS应用服务器

ArcIMS应用服务器可以跟踪ArcIMS空间服务实例所在的虚拟服务器组。当一个请求发送到应用服务器时,它就能够检测到应该分配给哪个虚拟服务器来进行处理。如图7-7所示,3个服务(要素服务1、影像服务2和影像服务3)同时启动。服务1是一个要素服务,包括地理编码功能,它的4个实例用三角形标出;服务2是一个影像服务,包括信息查询功能,它的4个实例用圆圈标出;服务3是一个影像服务,包含信息查询、地理编码和数据提取功能,它的8个实例用矩形标出。

③ArcIMS应用服务器检测哪些实例构成要素虚拟服务器。

④虚拟服务器组上所有实例全部启动。

图7-7 ArcIMS应用服务器按用户请求分配给空间数据服务器实例

9.管理工具

ArcIMS有两种类型的管理工具:一种是使用浏览器上的Java Applet技术的远程管理工具,另一种是使用本机或局域网内的Java独立应用程序。两者均主要分为Author(地图配置器)、Administrator(服务管理者)和Designer(网站设计器)3个部件。

地图配置器用于创建和修改数据配置信息文件。ArcIMS支持多种数据格式,矢量有SHP和SDE数据源、栅格格式数据TIFF等。大部分格式都需要手动修改配置文件。

服务管理者用于管理ArcIMS服务单元、虚拟服务器和地图服务,以及管理ArcIMS站点的配置信息、日志信息和性能信息等。

网站设计器提供向导的模式用于完成一个GIS站点的布局及功能设计和代码生成。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈