Una vez que haya definido un esquema de ordenamiento en teselas para el servicio de mapas, el servicio comenzará inmediatamente a intentar utilizar la caché. Cualquier aplicación de ArcGIS que pueda mostrar un servicio de mapas o imágenes utilizará la caché; no obstante, la manera en la que se recuperan y utilizan las teselas varía es distinta en cada aplicación.
Aplicaciones web
Puede agregar un servicio de mapas o de imágenes almacenado en la caché para utilizarlo como mapa base o capa operativa en su mapa web.
Para conectar un servicio de mapas almacenado en la caché a su mapa web, puede utilizar el objeto de capa del Servicio de mapas de teselas de ArcGIS.
Para conectar un servicio de imágenes almacenado en la caché a su mapa web, puede utilizar el objeto de capa Servicio de imágenes en teselas de ArcGIS.
Las teselas se recuperan de un directorio de la caché mediante llamadas REST al servicio de mapas utilizando la siguiente solicitud de tesela de mapa: https://<map service URL>/tile/<level>/<row>/<column>.
Resolución de problemas de aplicaciones web
Si su mapa va más lento de lo esperado, puede examinar las URL de las imágenes del mapa para comprobar que la aplicación está recuperando las teselas almacenadas en la caché.
Para verificar que la aplicación está recuperando las teselas almacenadas en la caché, siga estos pasos:
- Abra las herramientas de Desarrollador web en su navegador.
- Haga clic en la pestaña Red de la consola.
- Haga zoom y desplácese por el mapa web.
Si en la consola aparecen URL con un formato similar al que se muestra a continuación, la aplicación está utilizando correctamente las teselas almacenadas en la caché de las solicitudes REST.
https://gisserver.domain.com:6443/arcgis/rest/services/myService/MapServer/tile/10/1723/3495.jpg
Si observa otro formato de URL, como, por ejemplo, exportMap o exportImage, ello indica que la aplicación no está utilizando la caché.
ArcGIS Pro
Para agregar servicios de mapas almacenados en la caché a ArcGIS Pro, consulte Agregar capas a un mapa o escena en ArcGIS Pro.
Si se realiza una solicitud de una tesela en una escala que coincide con un nivel de escala en la caché para una proyección determinada, el servicio de mapas devolverá la tesela directamente. Sin embargo, a menudo las solicitudes no coinciden exactamente con la escala o la proyección en una caché. En estos casos, se solicitará y muestreará de nuevo la tesela del nivel de escala más cercano para que coincida con la escala solicitada. Realizar un nuevo muestreo es más rápido que generar la tesela dinámicamente; sin embargo, el proceso dará como resultado una imagen que tiene un aspecto diferente de la tesela original.
Nota:
Las etiquetas de mapa que se almacenaron en la caché pueden ser difíciles de leer en ciertas escalas después del proceso de remuestreo.
Se recomienda ver el mapa a escalas cercanas a las de creación de la caché para confirmar que son legibles.
ArcGIS Pro almacena localmente en la caché el contenido de los servicios de mapas e imágenes para mejorar el rendimiento de las capas de mapas e imágenes de una sesión. Consulte Establecer opciones de caché para obtener más información sobre el funcionamiento del almacenamiento en caché en ArcGIS Pro.
También es posible acceder a los datos almacenados en la caché como dataset ráster en ArcGIS Pro. Aunque las cachés a las que se accede como ráster no se pueden consultar, le permitirán ver las teselas cuando se desconecte del servidor, ya que no dependen de un servicio de mapas.
Permitir a los clientes almacenar localmente en la caché
Cuando se visualizan servicios de mapas o imágenes almacenados en la caché, se puede permitir que los clientes de ArcGIS almacenen teselas localmente, evitando así que sea necesario recuperarlas de nuevo cuando un usuario vuelve a navegar a una zona que ya ha visualizado.
Nota:
Es posible que los usuarios tengan que borrar sus cachés locales para poder ver las actualizaciones realizadas en la caché.
Si actualiza la caché con frecuencia, puedes optar por desactivar la posibilidad de que los clientes guarden las teselas en la caché local. De este modo, los usuarios dispondrán de la información más actualizada, en lugar de la información más antigua que pueda estar almacenada en su caché local.
Si el almacenamiento en la caché local está activado, los usuarios pueden optar por almacenar las teselas en la caché local. Los usuarios pueden elegir crear continuamente la caché local, crear una nueva caché local para cada sesión de la aplicación o no crear ninguna caché local.
Definir la propiedad cacheControlMaxAge
Cuando los clientes envían solicitudes a ArcGIS Server para mostrar un servicio de mapas, por lo general, la respuesta del servidor queda en caché en el navegador y se reutiliza durante cierto tiempo. Este comportamiento ayuda a lograr el mejor rendimiento de visualización posible del contenido. No obstante, según cómo se utilicen el servicio de mapas o de imágenes de la caché y sus datos asociados en aplicaciones, puede ajustar el tiempo durante el cual el navegador utiliza una respuesta de la caché.
Si una solicitud se repite y no se ha superado la duración máxima del caché, el navegador utiliza la respuesta del caché sin enviar la solicitud al servidor. Si se ha superado la duración máxima del caché, el navegador debe enviar la solicitud al servidor y establecer un encabezado IF-NONE-MATCH con un valor de ETag asociado correspondiente a la respuesta en su caché. ArcGIS Server evalúa la solicitud y utiliza el valor de ETag para determinar si la respuesta ha cambiado. Si la respuesta del servidor es distinta de la copia que hay en el navegador, el servidor envía una respuesta nueva al navegador. Si la respuesta es idéntica a la copia que hay en el navegador, el servidor alerta al navegador para que continúe utilizando la respuesta que tiene en la caché.
En el caso de los servicios de mapas en caché que no permiten a los clientes almacenar teselas en caché local, el valor predeterminado es 0. Como consecuencia, el navegador siempre vuelve a enviar una solicitud que ArcGIS Server procesará y a la que responderá si el contenido ha cambiado. Este valor predeterminado funciona bien en la mayoría de las aplicaciones.
En el caso de los servicios de mapas en caché que permiten a los clientes almacenar teselas en caché local, el valor predeterminado es 86.400 segundos (1 día). Con este valor predeterminado, si una solicitud se repite en el plazo de 1 día, el navegador utilizará la respuesta almacenada en su caché local. Si el servicio de mapas almacenado en la caché no se actualiza con frecuencia, se recomienda incrementar el valor de la propiedad cacheControlMaxAge a 30 días (2.592.000 segundos) o más a fin de minimizar el tráfico de la red.
Para agregar la propiedad cacheControlMaxAge a su servicio y editar el valor predeterminado, siga estos pasos:
- En un navegador web, abra el Directorio del administrador de ArcGIS Server e inicie sesión con privilegios de administración.
La dirección URL tiene el formato http://gisserver.domain.com:6443/arcgis/admin.
- Haga clic en servicios y seleccione el servicio de mapas o imágenes que desee modificar en la lista Servicios.
Si no ve el servicio en la lista, es posible que se encuentre en un directorio debajo de la carpeta raíz.
- En la página Service - <service name> (<service type>), desplácese a la parte inferior y haga clic en editar.
- En el cuadro de diálogo Propiedades del servicio, busque la sección "properties" del JSON del servicio.
- Agregue la propiedad cacheControlMaxAge a la sección y especifique el valor en segundos.
A continuación, encontrará un ejemplo:
"properties": { "cacheControlMaxAge": "300",
- Haga clic en Guardar cambios.
- Compruebe que la propiedad cacheControlMaxAge y el valor elegido aparezcan en la sección Propiedades.
Usar una ubicación de archivos compartidos de alta disponibilidad
Para el caché del sitio del servidor SIG en sus instalaciones, puede designar un directorio en un servidor de archivos con alta disponibilidad que utilice una red de área de almacenamiento (SAN) o un almacenamiento montado en red (NAS) con alta disponibilidad. Por lo general, el personal del departamento de tecnologías de la información se ocupa de esta configuración.
Si la organización dispone de una SAN o NAS con espacio suficiente para la caché, esta es la solución más sencilla y fiable para lograr que las cachés de imágenes y mapas tengan alta disponibilidad.
Si no hay acceso a un servidor de archivos de estas características, se pueden crear directorios de caché en cada equipo de la implementación tal como se describe en la sección siguiente.
En los sistemas de alta disponibilidad, puede realizar una copia de seguridad de sus directorios de caché a almacenamientos en la nube. Recuerde que los usuarios finales de las cachés de mapas o de servicio de imágenes pueden experimentar una pérdida de rendimiento, ya que las teselas se recuperan de un almacenamiento en la nube, en comparación con la recuperación de teselas desde un disco local. Además, asegúrese de que las cachés almacenadas en almacenamientos en la nube utilicen el formato almacenamiento compacto v2.
Configurar cachés de alta disponibilidad
Almacenar varias copias de las cachés de mapas e imágenes en todos los equipos del sitio permite que la caché y el servicio tengan alta disponibilidad. Cree directorios en cada equipo del sitio del servidor SIG y copie todas las caché en cara uno de estos directorios. Todos los equipos que participen en el sitio del servidor SIG deben poder acceder a todos los directorios de caché.
Al configurar los directorios de caché locales, tenga en cuenta lo siguiente:
- No se puede usar el almacenamiento en caché a demanda con servicios configurados con un directorio de caché local.
- Las herramientas de geoprocesamiento que actualizan las cachés existentes tienen la salida en un directorio de caché del sitio común. Al ejecutar estas herramientas, las cachés se deben mover a los directorios de caché locales de cada equipo que participe en el servidor SIG.
Aunque implementar directorios de caché en cada equipo del sitio del servidor SIG suponga una sobrecarga administrativa, esta es la única opción al implementar un servidor SIG con alta disponibilidad en la nube.
Esta solución también se pueden implementar en implementaciones en sus propias instalaciones. Se recomienda hacerlo si no se dispone de un servidor de archivos con alta disponibilidad y las cachés no se actualizan con frecuencia (o nunca).
De forma predeterminada, las cachés de mapas e imágenes se escriben en un único directorio de caché del sitio. Siga estos pasos para configurar directorios de caché en cada equipo que participe en el sitio del servidor SIG:
- Abra el extremo de servicios de ArcGIS del directorio de caché del servidor. La URL tiene el formato http://gisserver.domain.com:6080/arcgis/admin/system/directories.
- Seleccione el caché del sitio.
- Haga clic en Editar.
- Establezca Usar directorio local en VERDADERO.
- Especifique la ruta a un directorio de caché local. Los directorios de caché se deben crear en el mismo lugar en todos los equipos,
Una vez que se ha establecido, ArcGIS Server crea cachés para los servicios de mapas e imágenes publicados en ese equipo en el directorio de caché local especificado.
- Copie manualmente los datos de caché existentes del directorio de caché del sitio a cada directorio de caché local.
Asegúrese de que el caché existente se haya terminado de generar antes de tratar de copiarlo.
Por ejemplo, se puede usar rsync para mover la caché
rsync –avx -progress <login>@<location of existing cache> <local cache directory>