《精通ArcGIS Server 应用与开发》——2.2 ArcGIS Server架构

简介:

本节书摘来自异步社区《精通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控制。


<a href=https://yqfile.alicdn.com/b2e9fabc1451d80ff8d26c4bbdffa3616204414b.png" >

服务器管理员可以使用ArcCatalog管理GIS Server。可以注册新的服务器、添加和删除服务器对象、启动和停止服务器对象。

数据层负责为SOC提供相应的空间数据,可以是通过ArcSDE来访问的关系型数据库或基于文件类型存储的数据(Personal Geodatabase、ShapeFile等)。

相关文章
|
1天前
|
运维 Cloud Native 持续交付
构建未来:云原生架构在现代企业中的应用与挑战
【5月更文挑战第9天】 随着数字化转型的浪潮席卷全球,企业正迅速采纳云原生技术以实现敏捷性、可扩展性和弹性。本文深入探讨了云原生架构的关键组件,包括容器化、微服务、持续集成/持续部署(CI/CD)和DevOps文化,并分析了这些技术如何帮助企业加速产品上市时间,提高运营效率,并最终实现业务目标。同时,文章也识别了企业在采纳云原生实践中可能面临的挑战,如安全性考量、团队技能提升和复杂的网络管理,并提出了相应的解决方案和最佳实践。
|
2天前
|
Kubernetes 持续交付 开发者
构建高效微服务架构:后端开发的新趋势
【5月更文挑战第8天】 随着现代软件开发的不断演进,微服务架构已成为众多企业解决复杂系统问题的首选方案。本文深入探讨了微服务架构的核心概念、设计原则以及实施策略,旨在为后端开发者提供一种清晰、高效的技术路径。通过分析微服务的优势与挑战,结合具体的应用实例,文章将展示如何通过容器化、服务网格和持续集成/持续部署(CI/CD)等先进技术手段,实现后端服务的高可用性、可扩展性和敏捷性。
|
2天前
|
消息中间件 监控 Java
构建高效微服务架构:后端开发的新趋势
【5月更文挑战第8天】随着现代软件开发的复杂性日益增加,传统的单体应用架构逐渐难以满足快速迭代和灵活部署的需求。微服务架构作为一种新的解决方案,以其模块化、独立性强和易于扩展的特点,正在成为后端开发领域的重要趋势。本文将深入探讨如何构建一个高效的微服务架构,并分析其对后端开发实践的影响。
|
2天前
|
敏捷开发 持续交付 API
构建高效微服务架构:后端开发的现代实践
【5月更文挑战第8天】 在数字化转型的浪潮中,微服务架构已成为企业追求敏捷开发、持续交付和系统弹性的关键解决方案。本文将深入探讨微服务的核心概念,包括其设计原则、优缺点以及如何在后端开发中实现高效的微服务架构。我们将通过实际案例分析,展示微服务如何帮助企业快速适应市场变化,同时保持系统的可维护性和扩展性。
|
2天前
|
API 持续交付 开发者
构建高效微服务架构:后端开发的新视角
【5月更文挑战第8天】 随着现代软件开发的演变,微服务架构已经成为了企业追求敏捷、可扩展和灵活部署的重要解决方案。本文将深入探讨如何构建一个高效的微服务架构,包括关键的设计原则、技术栈选择以及持续集成与部署的最佳实践。我们还将讨论微服务带来的挑战,如数据一致性、服务发现和网络延迟,并提出相应的解决策略。通过本文,后端开发者将获得构建和维护微服务系统所需的深度知识,并了解如何在不断变化的技术环境中保持系统的健壮性和可维护性。
34 8
|
3天前
|
设计模式 Kubernetes 数据库
构建高效可靠的微服务架构:后端开发的新范式
【5月更文挑战第7天】在现代软件开发的浪潮中,微服务架构已经成为一种流行的设计模式。它通过将应用程序分解为一组小的、独立的服务来提高系统的可维护性和扩展性。本文深入探讨了微服务架构的核心概念、优势以及如何利用最新的后端技术构建一个高效且可靠的微服务体系。我们将讨论关键的设计原则,包括服务的独立性、通信机制、数据一致性和容错性,并展示如何在云环境中部署和管理这些服务。
17 3
|
4天前
|
缓存 监控 数据库
构建高性能微服务架构:后端开发的终极指南
【5月更文挑战第6天】 在现代软件开发的浪潮中,微服务架构以其灵活性、可扩展性和容错性引领着技术潮流。本文深入探索了构建高性能微服务架构的关键要素,从服务划分原则到通信机制,再到持续集成和部署策略。我们将透过实战案例,揭示如何优化数据库设计、缓存策略及服务监控,以确保系统的稳定性和高效运行。文中不仅分享了最佳实践,还讨论了常见的陷阱与解决之道,为后端开发者提供了一条清晰、可行的技术路径。
|
4天前
|
监控 负载均衡 API
微服务架构在现代企业中的应用与挑战
微服务架构已成为现代企业构建灵活且可扩展软件系统的首选。然而,随着其应用的普及,企业也面临着一系列新的挑战。本篇文章将探讨微服务架构的优势、实施时遇到的问题以及解决这些问题的策略。
|
4天前
|
Kubernetes Cloud Native 持续交付
构建高效云原生应用:Kubernetes与微服务架构的融合
【5月更文挑战第6天】 在数字化转型的浪潮中,企业正迅速采纳云原生技术以实现敏捷性、可扩展性和弹性。本文深入探讨了如何利用Kubernetes这一领先的容器编排平台,结合微服务架构,构建和维护高效、可伸缩的云原生应用。通过分析现代软件设计原则和最佳实践,我们提出了一个综合指南,旨在帮助开发者和系统架构师优化云资源配置,提高部署流程的自动化水平,并确保系统的高可用性。
27 1
|
5天前
|
监控 负载均衡 持续交付
构建高效微服务架构:后端开发的新趋势
【5月更文挑战第5天】在数字化转型的浪潮中,微服务架构以其灵活性、可扩展性和容错性成为企业追求的技术典范。本文深入探讨了微服务的核心组件、设计原则和实施策略,旨在为后端开发者提供构建和维护高效微服务系统的实用指南。通过分析微服务的最佳实践和常见陷阱,我们揭示了如何优化系统性能、保证服务的高可用性以及如何处理分布式系统中的复杂性。