Asignación de los recursos del servidor para almacenar en la memoria caché
En este tema
- Elegir el número de instancias permitidas para el servicio CachingTools
- Elegir el número de instancias a utilizar para realizar un trabajo de almacenamiento en memoria caché
- Configurar el número de trabajos que se pueden ejecutar simultáneamente
- Usar clusters
ArcGIS Server crea las teselas de la memoria caché mediante un servicio de geoprocesamiento llamado CachingTools. Este servicio se configura para usted en la carpeta Sistema cuando crea el sitio de ArcGIS Server. El número de instancias que permita para el servicio CachingTools determinará cuánta potencia puede dedicar su equipo a trabajos de almacenamiento en memoria caché.
Además, siempre deberá disponer de al menos una instancia ejecutándose del servicio de mapas, globo o imágenes que almacene en la memoria caché. Aumentar el número de instancias del mapa, globo o servicio de imágenes no afecta la velocidad a la que se crean teselas.
Legado:
En ArcGIS 10.0 y versiones anteriores, para aumentar el número de procesos del sistema operativo que funcionan en un trabajo de memoria caché, aumentó la cantidad de instancias del servicio de mapas o globo que se almacena en caché. En la versión 10.1 y en versiones posteriores, se aumenta el número de instancias del servicio de geoprocesamiento CachingTools en lugar de eso.
Elegir el número de instancias permitidas para el servicio CachingTools
En cualquier momento, puede utilizar ArcGIS Server Manager para ajustar la cantidad máxima de instancias del servicio de geoprocesamiento CachingTools que desea tener a disponibilidad para trabajar en los trabajos de almacenamiento en caché. Los valores mínimo y máximo se aplican a cada Servidor SIG individual. Por tanto, si su máximo está establecido en un valor de 3 y tiene cuatro Servidores SIG en el cluster que ejecuta el servicio CachingTools, puede tener hasta 12 instancias de CachingTools ejecutándose.
Este comportamiento le permite agregar y eliminar servidores SIG desde el sitio para aumentar o reducir la cantidad de recursos dedicados al almacenamiento en memoria caché. Puede agregar un servidor SIG aunque el trabajo de almacenamiento en caché se está ejecutando y se detectará y se asignarán teselas a crear.
Si opta por permitir demasiadas instancias del servicio CachingTools, el sistema se puede ver sobrecargado y resultar ineficiente. Si se eligen demasiado pocas instancias, es posible que el sistema esté infrautilizado. Hallar el número óptimo puede ser un proceso de prueba y error. Un buen punto de inicio es permitir un máximo de n + 1 instancias, donde n es el número de núcleos de CPU de un solo equipo del clúster. Si va a implementar el sitio en Amazon Web Services, utilice 2n + 1 donde n es el número de núcleos virtuales en una única instancia de EC2 del sitio.
El modo de ejecución del servicio CachingTools debe ser Asíncrono. Este es el valor predeterminado.
Elegir el número de instancias a utilizar para realizar un trabajo de almacenamiento en memoria caché
Las herramientas como Administrar teselas en caché de servidor de mapas le permiten elegir cuántas instancias de CachingTools trabajarán en la tarea. Puede elegir dividir las instancias disponibles de CachingTools entre varios trabajos en ejecución. Un trabajo podría no utilizan su número máximo de instancias de CachingTools si esas instancias se están utilizando en otros trabajos. Si un trabajo de almacenamiento en memoria caché está utilizando todas las instancias de CachingTools, los demás trabajos solicitados estarán en cola hasta que el primer trabajo se termine.
Escenarios
Supongamos que desea crear una memoria caché y tiene cuatro servidores SIG en un sitio con un cluster. Ha configurado cada servidor para permitir un máximo de cinco instancias de CachingTools. El número máximo de instancias que se pueden dedicar a cualquier trabajo de generación de cachés es 20.
Si desea ejecutar dos tareas de generación de caché simultáneas en este sitio y mantener una carga distribuida uniformemente, puede dedicar 10 instancias a cada trabajo.
Permitir la elasticidad
Puede ser que haya configurado el sitio en un entorno de nube que puede agregar automáticamente servidores SIG en respuesta a la demanda. En este caso, es posible que no desee estar limitado por un determinado número máximo de instancias que pueden funcionar durante el trabajo. En esta situación, puede introducir un valor de -1 para indicar que no hay ningún límite en el número de instancias que pueden funcionar durante el trabajo. Todas las instancias disponibles de CachingTools se utilizarán para el trabajo, sin importar cuántos servidores SIG estén agregados a su sitio.
Configurar el número de trabajos que se pueden ejecutar simultáneamente
Si demasiados publicadores empiezan a solicitar que se construya el caché simultáneamente, el servidor puede quedar sobrecargado, incluso aunque haya decidido dedicar pocas instancias a cada trabajo. El servicio CachingControllers (en la carpeta System) determina cuántos trabajos se pueden ejecutar simultáneamente.
El número predeterminado máximo de instancias del servicio CachingControllers es 3, lo cual significa que solo se pueden ejecutar tres trabajos de generación de caché simultáneamente. Si el servidor recibe una solicitud para realizar un cuarto trabajo de generación de caché, este trabajo quedará en cola hasta que termine uno de los otros trabajos. Si quiere permitir que se ejecuten cuatro trabajos a la vez, puede establecer el número máximo de instancias de CachingControllers en 4.
Usar clusters
Los clusters se utilizan en los sitios grandes de ArcGIS para dividir el trabajo entre subconjuntos de Servidores SIG. Los trabajos de almacenamiento en caché son elásticos y se esparcen a todos los servidores SIG en el cluster en el cual el servicio CachingTools se está ejecutando.
Cuando configura su sitio por primera vez, solamente hay un cluster, denominado predeterminado. Si desea restringir sus trabajos de almacenamiento en caché a un subconjunto de equipos, debe crear un nuevo cluster y asignar el servicio CachingTools para ejecutar en ese cluster. Luego puede asignar potencialmente sus otros servicios a un cluster diferente de manera que no sean solapados por procesos del trabajo de almacenamiento en caché.
Puede crear un caché para un servicio que no se está ejecutando en el mismo cluster que el servicio de geoprocesamiento CachingTools. Por ejemplo, puede tener un servicio de mapas, España, que se ejecuta en el Cluster A y su servicio de CachingTool se ejecuta en Cluster B. Con esta configuración, puede crear una memoria caché de España.
Los servicios CachingTools y CachingControllers siempre se deben ejecutar en el mismo clúster.