在第一组测试中,我们考察了数据库资源对系统处理负载能力的影响,即使是在拥有充足的 GIS 服务器资源的情况下。 这是为了展示数据库对整个系统的影响。 换言之,如果用户等待时间过长,问题可能不一定只出现在 ArcGIS Server 层级。
这些测试采用了优化的数据库配置,凸显了资源配置得当的数据库对 ArcGIS 系统整体性能起着至关重要的作用。 不过,在您自己的系统中,在扩容硬件之前,应优先关注数据库的优化和调整。 通过调整提升数据库性能通常更具成本效益,且无需额外基础设施投资即可解决不理想的性能问题。
我们进行了两次测试,旨在在服务器资源充足的情况下,比较数据库资源对系统性能的影响:
保持系统的其他所有方面不变,采用 1:1 ArcSOC 配置。 换言之,在 ArcGIS Server 实例中,每个 vCPU 配置一个 ArcSOC,其中 ArcSOC 和 vCPU 数量相等。 通过捕获并监控 ArcSOC 使用率和可用性、服务等待时间、系统资源利用率和 error 比率等性能指标来评估每个配置。 测试负载是原始系统测试研究设计负载的 8 倍,并将 ArcGIS Enterprise 服务器资源减半(相比于前期测试研究),以确保有足够的负载对系统产生影响。
由于 ArcGIS 是一个多层系统,因此在跨客户端、服务和数据存储层以及底层基础架构本身范围内执行了测试。 在本测试研究中,使用了 JMeter 模拟用户工作流并测量不同负载下的系统性能。
此次运行在配备 8 个可用 vCPU 的 PostgreSQL 实例上执行,旨在观察系统对缩减规模的数据库服务器的影响。 ArcGIS GIS 服务器 (UN Server) 也配备了 8 个 vCPU。 下文列出了六张实例资源图表,展示了整个系统的资源利用率,还有一张图表展示了并发请求。 在每个资源图表中,橙线代表 CPU 使用率 (%),金线代表磁盘使用率 (%),紫线代表内存使用率 (%)。
在下面的示意图中,可以看到 PostgreSQl DB 的 CPU 运行率为 100%,而托管服务器 CPU 经常出现峰值 100%。 这是由 8 倍设计负载下大量与工作流相关的查看请求引起的。
底部图表所示为并发请求,测量数据来自 JMeter 日志。 请注意,红线代表并发查看请求,随着测试运行,数量逐渐上升到 538。 这表明请求尚未关闭。 在后续图表中,可以看到这条线条稳定地上下移动,表明系统正在响应,请求的关闭速度足够快以应对负载。

该配置无法支持负载,因为数据库服务器资源不足,从 PostgreSQL 数据库图表中的橙线(CPU 利用率)、托管服务器 CPU 峰值以及并发请求数量中可见一斑。
为了进一步佐证这一说法,下图展示了托管服务器上 ArcSOC 的使用情况,该数据由运行在远程机器上的 Soccer(ArcSOC 监控)实用程序捕获。 红线显示处于繁忙状态的 ArcSOC 达到 100% (8),很可能是数据库过载所致。 ArcSOC 暂停(繁忙),等待数据库响应。 事实上,ArcSOC 繁忙会导致 Soccer 无法追踪其状态,由不完整的红线以及最大值(绿线)的突然下降可见。

在第二个测试中,我们将 PostgreSQL 数据库实例加倍至 16 个 vCPU,以观察与第一个测试的不同。 ArcGIS GIS 服务器各自配置 8 个 vCPU。 与上图一样,CPU 利用率百分比为橙色,磁盘为金色,内存为紫色。 请注意,除了少数几次峰值外,所有服务器的 CPU、磁盘和内存通常运行率低于 60%。
并发请求图表显示,平均并发查看请求为 36 次,偶尔有峰值。 开放请求数量没有像上一张图表那样呈上升趋势,说明该系统正在处理负载。

下面的 ArcSOC 图表显示托管服务器上的 ArcSOC 处于繁忙状态,但整体系统响应良好。 尽管 99% (p99) 的使用率是 8 个 ArcSOC 或更少,但平均值为 4.81。 稍后我们将关注用户体验,了解该系统是否能帮助人员高效工作。

除了整体系统的利用率和性能外,数据库实例资源的增加显著提升了终端用户高效完成工作的能力。 本测试研究通过观察工作流执行时间 - 即用户完成工作流步骤所需的时间以及工作流步骤执行时间 - 即在工作流中完成关键步骤所需的时间,来评估终端用户效率。
用户体验是这些测试研究中的最终衡量标准。 我们在测试过程中了解到,即使系统看似在正常参数范围内运行,网络延迟、GPU 实现、地图实例配置错误等因素仍可能对终端用户产生负面影响。 专注于终端用户,提升投资回报率。

在上图中,可以看到小型数据库测试中系统资源饱和度增加导致工作流执行时间延长,从而整体导致终端用户体验变差。 与资源充足的数据库相比,在使用资源配置不当的数据库时,所有工作流的整体执行时间都大幅增加,即使 ArcGIS Server 资源充足也是如此。 特别是,在拥有适当规模的企业地理数据库后,视图资产工作流的执行时间显著减少。
除了工作流执行时间外,我们还深入地研究了数据库资源如何影响了特定编辑工作流步骤的持续时间。 不过,这确实体现在更新资产工作流中打开项目和定位资产所需的巨大时间差异。 同样,电力追踪在所有工作流步骤中的耗时都显著增加。 这一模式在所有捕获的工作流中都保持不变。
