Elegir una capacidad de ArcGIS Enterprise para evaluar como referencia
Como el sistema de software fundamental para GIS, ArcGIS Enterprise realiza muchas tareas como mapeo y visualización, análisis. De esta amplia gama de capacidades y funciones no existe una única prueba que pueda representar toda su habilidad.
Sin embargo, si una función se utilizara como referencia para probar una implementación de ArcGIS Enterprise, se puede argumentar fuertemente a favor de la función de exportación del servicio de mapas. La exportación de mapas puede ser llamada fácilmente y programáticamente en un Plan de Pruebas Apache JMeter variando las extensiones espaciales de las solicitudes desde archivos de datos CSV a través de varias escalas de mapa. Esto se traduce en solo una solicitud por cada transacción de escala de mapa, lo que ayuda a mantener la prueba sin complicaciones y fácil de mantener. Unido al hecho de que la función de exportación ha estado disponible desde la versión 9.3, hace que sea una operación probada y confiable para evaluar como referencia.
¿Qué es una referencia de un servicio de mapas?
Los evaluadores y administradores GIS a menudo tienen la tarea de entender las diferencias en el rendimiento entre dos sistemas o el mismo sistema después de alguna modificación del entorno. En tales escenarios, una referencia es el proceso de realizar una prueba de carga para actuar como un estándar con el cual múltiples cosas pueden compararse entre sí.
Con respecto a GIS, esta prueba de carga sería un Plan de Pruebas Apache JMeter ejecutando una prueba de carga escalonada contra un servicio de mapas ArcGIS Enterprise para entender la tasa máxima de rendimiento (transacciones/seg o solicitudes/seg) que se puede lograr desde la implementación dado un estado o configuración particular. Esta tasa también se conoce como el rendimiento máximo. En el rendimiento máximo, entender el desempeño (tiempo de respuesta por transacción o solicitud) también sería crítico medir.
Conjunto de datos para referencia
Cualquier conjunto de datos puede usarse para una referencia siempre que se mantenga constante donde no se realicen cambios como adiciones, actualizaciones, eliminaciones y versiones en la clase de entidad. Esta consistencia ayuda a crear un "estándar" confiable ya que es un objetivo fijo. Los datos de prueba pueden ser privados (por ejemplo, propietarios) o basados en dominio público.

¿Qué son los datos del dominio público?
En términos generales, los datos del dominio público serían cualquier conjunto raster o vectorial que sea gratuito para descargar y usar. Existen muchos conjuntos de datos del dominio público (y potencialmente diferentes licencias que los definen). Los datos usados en este Artículo son Hechos con Natural Earth y proporcionados a través de la licencia Creative Commons (CC0).

¿Por qué usar datos del dominio público?
Una de las características que hacen una buena referencia es construir una prueba para que otros puedan repetir la misma prueba que usted hizo. Los datos del dominio público son una buena opción en este sentido ya que promueven un estándar de prueba y una medida confiable para el desempeño y escalabilidad.
SampleWorldCities vs Natural Earth
Mientras que la inclusión SampleWorldCities en ArcGIS Server a través de su instalación ayuda a hacer el conjunto de datos ubicuo y bueno para ejemplos y tutoriales, su tamaño extremadamente pequeño no lo hace ideal para usarlo como referencia para un servicio de mapas.
Los conjuntos Natural Earth, por otro lado, proporcionan un detalle decente del mapa (a escalas más pequeñas) cubriendo todo el mundo. Además, esto se puede lograr con un tamaño en disco fácilmente manejable lo que ayuda a hacerlo más práctico para compartir, descargar y usar.
El conjunto Natural Earth para referencia
- Descargue aquí el conjunto para referencia
- Los datos son un subconjunto del Natural_Earth_quick_start.zip e incluyen un MXD modificado para proyectos ArcMap 10.8.1 y ArcGIS Pro 2.8.
- Cualquiera puede usarse para publicar un servicio de mapas en ArcGIS Enterprise.
- El subconjunto Natural Earth debería verse similar al siguiente cuando se abra en ArcGIS Pro (o ArcMap)

Arquitectura del despliegue
La arquitectura es un detalle importante en una referencia. Los siguientes son todos componentes importantes de la arquitectura para referencia que impactan la prueba:
- ¿Existe un Web Adaptor?
- ¿Se involucró autenticación o el servicio fue hecho disponible para todos?
- Autenticación Portal for ArcGIS
- Autenticación token ArcGIS Server
- Disponible para todos
- ¿Cuántas máquinas participaron en el Sitio ArcGIS?
- Detalles del procesador
- Modelo y arquitectura del procesador
- Número de núcleos CPU para cada servidor (incluyendo la estación cliente usada para pruebas)
- Físico, virtual o nube
- Detalles memoria física
- Cantidad total de memoria del sistema
- Velocidad red
- Versión ArcGIS Enterprise
- Versión Sistema Operativo
Nota: Se recomienda tomar nota detallada sobre la arquitectura del despliegue. Guardar esta información junto con los resultados puede ayudar a dar contexto adecuado y significado al análisis o conclusiones.
Los resultados listados para esta prueba fueron ejecutados contra la siguiente arquitectura ambiental:
- ArcGIS Server (10.9 Final)
- Dell PowerEdge R640
- Sistema operativo Windows Server 2019
- Red 10G
- ArcGIS Web Adaptor (10.9 Final)
- Dell PowerEdge R440
- Sistema operativo Windows Server 2019
- Red 10G
Cliente para pruebas
Apache JMeter 5.4.1
Dell PowerEdge R640
SPECint_rate_base2006
6 CPUs virtuales
16GB RAM
< LI >
< SPAN >Sistema operativo Windows Server 2019< / SPAN >
< / LI >
< LI >
< SPAN >Red 10G< / SPAN >
< / LI >
< / UL >
< / LI >
< / UL >
< SPAN >Tipo y ubicación fuente datos < / SPAN >
< / H2 >
< SPAN >Usar ya sea geodatabase archivo o geodatabase empresarial para almacenar datos en pruebas referencia está bien.
R
< / SPAN >< SPAN >egardless cuál se use, detalle fuente datos es propiedad importante ambiente que debe ser
notado.< / SPAN >
< / P >
Nota: Se recomienda tomar nota tipo fuente datos.
Guardar esta información junto con resultados puede ayudar a dar contexto adecuado y significado al análisis o conclusiones.
< / strong >
si la implementación tiene múltiples servidores que conforman el ArcGIS Enterprise Site. En cualquiera de los casos, remoto o local, la ubicación de la fuente de datos también es un detalle importante del entorno de prueba que debe ser anotado.<\/SPAN><\/P>Nota: Se recomienda tomar nota de la ubicación de la fuente de datos. Guardar esta información con los resultados de la prueba puede ayudar a dar un contexto y significado adecuados al análisis o conclusiones.<\/STRONG><\/FONT><\/P>Tipo de Servicio y Número de Instancias<\/FONT><\/H2>Para los servicios de mapas ArcGIS más utilizados en un Site, se recomienda publicar el recurso como una instancia Dedicated en lugar de Shared. Aunque ambos tipos pueden escalar para utilizar completamente el hardware disponible, una instancia de servicio Dedicated tiene recursos detrás que están dedicados a ella, lo que la convierte en una opción ideal para una prueba benchmark.<\/FONT><\/P>Para un rendimiento predecible, se recomienda establecer el número Mínimo y Máximo de instancias para el tipo Dedicated igual al número de núcleos CPU de la máquina ArcGIS Server.<\/FONT><\/P>Nota: Se recomienda tomar nota del tipo de servicio y número de instancias. Guardar esta información con los resultados de la prueba puede ayudar a dar un contexto y significado adecuados al análisis o conclusiones.<\/STRONG><\/FONT><\/P>¿Importan las Opciones de Solicitud en una Prueba Benchmark?<\/H2>¡Absolutamente! Usar un conjunto común de datos y la función export map no es suficiente para establecer un benchmark confiable. La operación export es extremadamente versátil pero a través de esta flexibilidad se puede generar una imagen mediante una variedad diferente de opciones de entrada.<\/P>Una prueba de carga que envía solicitudes al servicio de mapas consistentemente es importante para establecer un benchmark confiable. ¿Puede la prueba solicitar un formato de imagen BMP en lugar de PNG o pedir que los datos estén en una referencia espacial diferente a la predeterminada 4326? Sí, pero cambiar tales opciones puede afectar el rendimiento y escalabilidad de la prueba, por lo que se recomienda dejar estas configuraciones del Test Plan tal como están.<\/P>El Plan de Prueba Benchmark del Servicio de Mapas <\/H1>- Para descargar el Apache JMeter Test Plan usado en este Artículo vea: <\/SPAN>naturalearth1.zip<\/A> <\/STRONG>
- Este Test Plan está basado en gran medida en el proyecto SampleWorldCities del
artículo previo<\/A><\/LI><\/UL><\/LI><\/UL>- Descargar y abrir el Test Plan en Apache JMeter debería verse similar a lo siguiente:
La Configuración del Thread Group<\/H2>El Thread Group define las características de carga escalonada del test y juega un papel importante. Para un export map, el Número máximo de Threads para la prueba tiene una relación cercana con el número máximo de núcleos CPU del ArcGIS Server (y similarmente, el número máximo de instancias del servicio). Configurar los threads del test para exceder el número de núcleos ayuda a asegurar que se aplique suficiente presión para utilizar completamente los recursos CPU del servidor. A partir de ahí, se debería observar el rendimiento pico, que es un objetivo principal del test benchmark.<\/P>Nota: No todos los conjuntos de datos probados pueden mostrar que el respectivo servicio utilice completamente la CPU del nivel ArcGIS Server. En tales casos, se necesita solución adicional para entender dónde existe el cuello de botella que limita la escalabilidad del flujo dado.<\/STRONG><\/FONT><\/P>Como regla general, configure la carga máxima escalonada para que sea entre 25% y 60% mayor que el número de núcleos CPU del servidorComo se ve abajo, el Test Plan está configurado para ejecutarse durante 1 hora y alcanzar una carga máxima escalonada de 40 threads concurrentesEsto iniciaría el benchmark con 1 thread y añadiría un thread adicional cada 90 segundos<\/LI>Este benchmark fue diseñado para probar una implementación ArcGIS Server corriendo en 24 núcleos físicos CPU <\/LI>Ajuste según corresponda, no todos los ArcGIS Server correrán en 24 núcleos físicos y los valores máximos escalonados pueden ser demasiado altos para su implementación<\/LI><\/UL><\/LI><\/UL><\/LI><\/UL>
<\/span><\/P>Nota: Se recomienda tomar nota de los detalles de configuración de carga escalonada. Guardar esta información con los resultados puede ayudar a dar contexto y significado adecuados al análisis o conclusiones.<\/STRONG><\/FONT><\/P>Ejecución del Test Benchmark<\/H1>El benchmark debe ejecutarse igual que un típico JMeter Test Plan.
Vea el script runMe.bat incluido con el proyecto naturalearth1.zip como ejemplo sobre cómo ejecutar una prueba recomendada por el equipo Apache JMeter.
Nota: Siempre se recomienda coordinar la hora y duración del inicio del test con el personal apropiado. Esto asegura un impacto mínimo a usuarios y otros colegas que también puedan necesitar usar el ArcGIS Enterprise Site. Además, esto ayuda a prevenir ruido del sistema<\EM> por otras actividades y usos que puedan "contaminar" los resultados del test.
Resultados y Análisis<\H1>
Una vez completada la prueba de carga, runME.bat instruye a Apache JMeter para generar automáticamente un reporte que ayude con el análisis.
Pueden existir artículos enteros y recursos en internet dedicados exclusivamente al análisis detallado componentes resultados pruebas carga. Por simplicidad nuestro enfoque será observar rendimiento solicitudes (solicitudes/seg)<\STRONG> y tiempo respuesta solicitudes (segundos)<\STRONG> métricas reporte.
Los diagramas abajo ilustran tendencias ideales estos dos ítems durante prueba.
Curva Ideal Rendimiento<\H2>

Idealmente curva rendimiento tendrá forma línea naranja arriba. Punto donde curva
alcanza pico y comienza a aplanarse indica sistema alcanzó nivel máximo rendimiento (debido cuello botella hardware o software). Esta área gráfico donde curva dobla se llama rodilla<\EM>, valor máximo rendimiento está aquí.
Línea azul representa aumento carga escalonada prueba.
Curva Ideal Rendimiento Tiempo Respuesta<\H2>

Idealmente curva tiempo respuesta tendrá forma línea verde arriba. Se toma mismo punto prueba como máximo rendimiento.
Línea azul representa aumento carga escalonada prueba.
Reporte JMeter<\H1>
Incluido proyecto naturalearth1.zip está reporte Apache JMeter llamado naturalearth1_run1 dentro carpeta reports.
Abrir index.html revelará múltiples gráficos y tablas para asistir análisis
Curva Real Rendimiento
Del reporte:
Bajo Charts-->Throughput, se encuentra gráfico Hits Per Second donde se grafica rendimiento solicitudes desde prueba
Dado que prueba fue construida con cada transacción conteniendo solo una solicitud, "hits por segundo" es equivalente tanto a transactions/sec como a requests/sec- El sistema alcanzó un rendimiento máximo de aproximadamente 80 transactions/sec (o 80 requests/sec)
Curva de Rendimiento Actual- Del informe:
- Bajo Charts-->Response Times, se puede encontrar el gráfico Time Vs Threads donde se representa el rendimiento de las requests del test
- Todos los elementos excepto "/pvtserver/rest/services/NaturalEarth/MapServer/export" están filtrados (haciendo clic en ellos dentro de la leyenda)
- Dado que la prueba fue construida con cada transaction conteniendo solo una request, la "export request" también representa el rendimiento promedio de la transaction
- En el punto de máximo throughput, el sistema entrega un rendimiento de transaction de aproximadamente 314ms o 0.3 segundos
Nota: Se deberá tomar un enfoque diferente para el análisis en pruebas de carga que contengan transactions con más de una requestComparando los ResultadosDespués de haber completado la prueba de su sistema con los datos y Test Plan proporcionados, puede comparar los resultados con los listados en este Artículo. Esto puede proporcionar una medida aproximada para equiparar dos sistemas. Apache JMeter lanzado bajo la Apache License 2.0. Apache, Apache JMeter, JMeter, la pluma Apache y el logo Apache JMeter son marcas registradas de la Apache Software Foundation.