Resultados de las pruebas sobre el impacto de la configuración de ArcSOC

Además de evaluar los recursos de la base de datos, el segundo conjunto de pruebas se centró en identificar la configuración óptima de ArcSOC para soportar una carga de diseño 8x en nuestro sistema y sus flujos de trabajo, partiendo del supuesto de que se dispone de recursos de base de datos suficientes.

Métodos de prueba y resultados

Se realizaron tres pruebas con diferentes proporciones de ArcSOCs: vCPU:

  • 2:1, or two ArcSOCs per vCPU on the ArcGIS Server instances
  • 3:1, or three ArcSOCs per vCPU on the ArcGIS Server instances
  • 4:1, or four ArcSOCs per vCPU on the ArcGIS Server instances

También realizamos esta prueba con una proporción 1:1 de ArcSOC por vCPU, que puede ver en la prueba de tamaño de instancia de la base de datos grande descrita en la evaluación de impacto de los recursos de la base de datos.

Realizamos varias pruebas de carga, variando sistemáticamente la proporción entre instancias de ArcSOC y vCPUs para observar y medir el impacto en el rendimiento y la experiencia del usuario. Todos los demás aspectos del sistema se mantuvieron constantes para lograr resultados significativos.

Se monitorizaron métricas de rendimiento como el uso y la disponibilidad de ArcSOC, los tiempos de espera del servicio, la utilización de recursos del sistema y las error tasas para evaluar cada configuración.

Las pruebas se realizaron con una carga ocho veces superior (8x) a la carga de diseño del estudio original del sistema, y los recursos del servidor de ArcGIS Enterprise se redujeron a la mitad para garantizar que hubiera suficiente carga como para afectar al sistema. Se utilizó JMeter para simular los flujos de trabajo de los usuarios y medir el rendimiento del sistema bajo otro tipo de cargas.

Dado que ArcGIS es un sistema de varios niveles, las pruebas se realizaron en los niveles de cliente, servicio y almacenamiento de datos, así como en la propia infraestructura subyacente. En este estudio de prueba, se utilizó JMeter para simular los flujos de trabajo de los usuarios y medir el rendimiento del sistema bajo otro tipo de cargas.

2:1 ArcSOCs : vCPU ratio

En esta ejecución, configuramos dos ArcSOCs por vCPU en las instancias de ArcGIS Server. En este caso, 16 ArcSOC en ejecución para 8 vCPU. Como en los gráficos anteriores, el porcentaje de utilización de la CPU es naranja, el disco es dorado y la memoria es morada.

En el gráfico siguiente, el uso de CPU en todas las máquinas suele ser inferior al 60%. Sin embargo, puede verse que el uso de memoria en el servidor SIG de la red de servicios alcanza picos superiores al 80%. Esto se debe al mayor número de procesos ArcSOC en ejecución en comparación con una relación 1:1. Los servicios en el servidor SIG de la red de servicios permiten la edición versionada de bases de datos. Aunque el sistema parece funcionar sin problemas, la memoria deberá ser monitorizada de cerca para evitar problemas. El gráfico de solicitudes concurrentes muestra que las solicitudes de visualización concurrentes (en rojo) se abren y se cierran de forma constante, con una media de 35.

Utilización de recursos del sistema con una relación ArcSOC:vCPU de 2:1

El gráfico siguiente muestra el uso de ArcSOC en el servidor de alojamiento, donde hay 16 ArcSOC en ejecución (la línea azul queda cubierta por la línea verde); el máximo en uso (ocupado) es 14. El servidor SIG de la red de servicios (no mostrado) tenía un máximo de 7 ArcSOCs ocupados, por lo que no aprovechó las instancias de servicio adicionales: había 16 ArcSOC en ejecución, pero la mayoría permanecían inactivos. Dado que este servidor mostró un uso de memoria superior al 80%, reducir las instancias de servicio a un mínimo/máximo de 8 en el servidor SIG de la red de servicios podría aliviar parte de la presión sobre la memoria y hacer que este sistema fuera óptimo para estos flujos de trabajo y cargas. Cualquier cambio en los flujos de trabajo o en las cargas podría afectar a ese equilibrio.

Utilización de ArcSOC con una relación ArcSOC:vCPU de 2:1

3:1 ArcSOCs to vCPU ratio

En esta ejecución, configuramos tres ArcSOCs por vCPU. En este caso, 24 ArcSOC en ejecución para 8 vCPU. Una vez más, la utilización de la CPU (naranja) suele estar por debajo del 60% en todas las máquinas. Desafortunadamente, la utilización de memoria (morado) en el servidor SIG de la red de servicios está llegando al máximo, con caídas al 95% ocurriendo como parte del proceso de limpieza. Las solicitudes de visualización simultáneas (en rojo) muestran que se abren y cierran de forma constante, con una media de 36. Este sistema parece estar gestionando la carga, pero no es sostenible debido a la escasez de memoria.

Utilización de recursos del sistema con una relación ArcSOC:vCPU de 3:1

Además, al mirar el gráfico de ArcSOC que aparece a continuación, se puede ver que con una proporción de 3:1 el servidor SIG de la red de servicios tiene 24 ArcSOCs en funcionamiento (la línea azul está cubierta por la línea verde). Sin embargo, el máximo de actividad es solo 18, que consumen memoria incluso cuando no se está utilizando. Este es un ejemplo de una configuración deficiente. Nuestra carga de trabajo no requiere todos los ArcSOCs disponibles. Los seis que no se necesitan (24 funcionando menos 18 que están ocupados) consumen recursos (memoria) innecesariamente. Aumentar la memoria en el servidor SIG de la red de servicios puede mejorar esta situación, pero también podría trasladar el problema a la CPU o a la base de datos. Se requieren pruebas y observación para tomar decisiones adecuadas de configuración y diseño que apoyen el sistema.

Utilización de ArcSOC con una relación ArcSOC:vCPU de 3:1

4:1 ArcSOCs to vCPU ratio

En esta ejecución, había cuatro ArcSOCs configurados por vCPU. En este caso, 32 ArcSOC en ejecución para 8 vCPU en el servidor SIG de la red de servicios. La utilización de la CPU (naranja) está creciendo, con dos picos superiores al 80% en el servidor SIG de la red de servicios. Sin embargo, el mayor problema es casi el 100% de uso de memoria (azul) en ese caso, donde incluso el proceso de limpieza está teniendo dificultades para seguir el ritmo.

Las solicitudes de visualización concurrente (rojo) en la parte inferior muestran que siguen abriéndose y cerrándose de forma constante, con la misma media de 36, igual que con la proporción 3:1. Esto demuestra que los ArcSOCs adicionales no aportan ningún beneficio al rendimiento del sistema ni a la experiencia del usuario final. Más bien, simplemente están consumiendo recursos del servidor SIG.

Utilización de ArcSOC con una relación ArcSOC:vCPU de 4:1

Esto se confirma además con el gráfico de ArcSOC que aparece a continuación, que muestra un máximo de solo 16 ArcSOCs ocupados. Aquí podemos ver claramente cómo agregar instancias de servicio adicionales solo consumió recursos innecesarios del servidor, sin aportar ninguna mejora en cuanto a rendimiento o experiencia de usuario. Aumentar la CPU y la memoria del servidor SIG de la red de servicios puede mejorar los resultados, pero esto podría trasladar el problema a la CPU del servidor de base de datos. Probar y observar es clave.

Utilización de recursos del sistema con una relación ArcSOC:vCPU de 4:1

Top