Español

Problema: El número de instancias ArcSOC provoca problemas de rendimiento de ArcGIS Server

Descripción

El número de instancias ArcSOC.exe puede consumir elevados recursos de memoria (RAM), lo que provoca problemas de rendimiento de ArcGIS for Server.

image of Task Manager - Performance tab

Causa

El problema se produce cuando se están ejecutando varias instancias en un solo equipo host, con lo que se superan los límites de memoria disponible, se consumen excesivos recursos y se origina un entorno de servicio inestable. ArcGIS for Server está ajustado para un rendimiento óptimo sin ninguna configuración adicional. Incluso cuando el sistema está inactivo, está configurado para un gran volumen de solicitudes. Cuando aumenta la carga de trabajo del sistema, el consumo de memoria aumenta para admitir las funciones de alto rendimiento que se están gestionando. Con un proceso ArcSOC.exe, cada instancia en ejecución crea dos procesos ArcSOC.exe. Por ejemplo, un servicio de geoprocesamiento con tres instancias en ejecución genera siete procesos ArcSOC.exe.

Solución o solución alternativa

Existen dos opciones a la hora de intentar resolver este comportamiento.

  • La opción 1 corresponde a ArcGIS Server 10.7 y posteriores.
  • La opción 2 corresponde a todas las versiones de ArcGIS Server.


Opción 1: Configurar los servicios para que utilicen el grupo de instancias compartido. (Disponible en ArcGIS Server 10.7 y posteriores).

A partir de 10.7, ArcGIS Server contiene un grupo de instancias compartido; de forma predeterminada, este grupo de instancias compartido contiene cuatro procesos ArcSOC.exe. Con un grupo de instancias compartido, en lugar de que un servicio inicie su propio proceso ArcSOC.exe individual, utilizará los procesos ArcSOC.exe disponibles en el grupo de instancias compartido. Una vez finalizado el procesamiento de la solicitud, este proceso ArcSOC.exe queda libre para su uso por cualquier otro servicio del grupo compartido. De esta forma, es posible reducir el número de procesos ArcSOC.exe que se ejecutan en el equipo de ArcGIS Server, y resulta ideal para aquellos servicios que no necesitan sus propios procesos ArcSOC.exe individuales.

La opción del grupo de instancias compartido está disponible para los servicios de mapas publicados desde ArcGIS Pro. Las siguientes restricciones limitan los servicios que pueden utilizar el grupo de instancias compartido:

  • Solo se pueden configurar servicios de mapas para que utilicen el grupo de instancias compartido. Otros tipos de servicios, por ejemplo, los servicios de geoprocesamiento, no son compatibles.
  • Solo se pueden habilitar determinadas capacidades de los servicios de mapas, como el acceso a entidades, WFS, WMS y KML. Desactive el resto de capacidades antes de continuar.
  • Los servicios con extensiones de objeto de servidor (SOE) e interceptores de objetos del servidor (SOI) personalizados no pueden utilizar instancias compartidas.
  • Los servicios publicados desde ArcMap no pueden utilizar instancias compartidas.
  • Los servicios de mapas en caché publicados desde ArcGIS Pro que cumplan los requisitos anteriores pueden utilizar las instancias compartidas.

En los siguientes pasos se describe cómo configurar un servicio para utilizar el grupo de instancias compartido.

  1. Inicie sesión en ArcGIS Server Manager con una cuenta administrativa.
  2. En Sitio (raíz) > Sistema, haga clic en el servicio que desea modificar.
  3. Haga clic en Agrupación y seleccione el botón de opción Grupo de instancias compartido.
User-added image
  1. Haga clic en Guardar y reiniciar.


Opción 2: Cambiar el número mínimo de instancias a "0". (Disponible en todas las versiones de ArcGIS Server).

Si la utilización de la funcionalidad de grupo de instancias compartido en ArcGIS Server no es viable, considere la posibilidad de establecer el número mínimo de instancias en "MinInstances = 0" en los servicios utilizados rara vez. De este modo se reserva memoria y espacio para otros servicios de geoprocesamiento y mapa activo. Tener un número mínimo de instancias de cero puede provocar una pérdida de rendimiento, dado que el ArcSOC necesita cierto tiempo para iniciarse tras una solicitud. Para aquellos servicios que sean muy consumidos por los usuarios, ajuste el número máximo de instancias a "MaxInstances = n+1" (siendo "n" el número de núcleos del equipo host). Consulte la siguiente documentación de Ayuda de ArcGIS para obtener información adicional sobre la optimización del rendimiento de ArcGIS for Server: Afinar y configurar los servicios.

En los siguientes pasos se describe cómo especificar el número de instancias de procesos ArcSOC.exe en ArcGIS Server Manager.

  1. Inicie sesión en ArcGIS Server Manager con una cuenta administrativa.
  2. En Sitio (raíz) > Sistema, haga clic en el servicio que se va a modificar.
    [O-Image]
  3. Haga clic en Agrupamiento y modifique el Número mínimo de instancias por equipo a 0.
    [O-Image]
  4. Haga clic en Guardar y reiniciar.
Nota:
La propiedad MinInstances debe ser inferior a la propiedad MaxInstances.

Consulte la siguiente documentación de la Ayuda de ArcGIS para obtener más información sobre cómo Configurar ajustes de instancias de servicio.

Información relacionada