本节书摘来自异步社区《精通ArcGIS Server 应用与开发》一书中的第2章,第2.2节,作者: 何正国 , 杜娟 , 毛海亚 更多章节内容可以访问云栖社区“异步社区”公众号查看。
2.2 ArcGIS Server架构
精通ArcGIS Server 应用与开发
ArcGIS Server是一个分布式系统,由多个部分组成,可分别部署在不同的机器上。它们分别在进程的管理、启动和关闭以及对象运行的服务器负载均衡方面发挥着各自的作用。ArcGIS Server的体系结构如图2-1所示。
客户端表现层包括基于浏览器/服务器(B/S)结构的浏览器和基于客户端/服务器(C/S)结构的桌面应用程序。该层主要调用ArcGIS Server开发的功能和访问ArcGIS Server发布的数据公共接口。Web浏览器是用户通过浏览器连接Web层的用户接口,而桌面程序是通过HTTP协议连接运行在Web服务器上的Web Service或直接通过内部局域网连接GIS Server以获得相应服务对象的代理。
应用层可分为Web应用层和GIS Server层。Web应用层主要处理用户通过Web浏览器和Web Services发送的请求,并根据用户请求从GIS Server中获得相应的结果返回给客户端显示。GIS Server层由服务器对象管理器(SOM)来管理一个或者多个服务器对象容器(SOC)。
SOM(Server Object Manger)是一个Windows/UNIX服务,管理一组分布在一个或多个SOC上的服务器对象(Server Object)。Server Object运行在ArcSOC.EXE进程中,对SOC的负载平衡进行动态调节。用户通过局域网或者互联网连接到ArcGIS Server服务器时,实则连接是SOM,SOM得到用户的请求后根据负载平衡原则自动调用相应的SOC上的服务器对象。
SOC(Server Object Container)进程是SOM启动的一个进程即一个或多个服务器对象的进程。服务器对象运行在SOC机器上。每一个容器可运行多个容器进程,而每一个容器进程中可有一个或多个服务器对象。容器进程的启动或者停止由SOM控制。
https://yqfile.alicdn.com/b2e9fabc1451d80ff8d26c4bbdffa3616204414b.png" >
服务器管理员可以使用ArcCatalog管理GIS Server。可以注册新的服务器、添加和删除服务器对象、启动和停止服务器对象。
数据层负责为SOC提供相应的空间数据,可以是通过ArcSDE来访问的关系型数据库或基于文件类型存储的数据(Personal Geodatabase、ShapeFile等)。