Arquitectura en clúster para el módulo Location Intelligence.

En un entorno de clúster, el procesamiento se comparte entre dos o más instancias del servidor. El siguiente diagrama ilustra la arquitectura de implementación de tal configuración. El equilibrio de carga se puede usar para admitir alta disponibilidad y escalamiento. La arquitectura de implementación incluye un equilibrador de carga, un clúster de Spectrum Spatial, una base de datos y un recurso compartido de archivos. Con este enfoque, es posible realizar un escalamiento horizontal y vertical. Puede agrupar el módulo Location Intelligence con o sin la plataforma de clústeres.

Nota: Se recomienda configurar un clúster Spectrum™ Technology Platform y un clúster del módulo Location Intelligence, lo que plantea varios beneficios:
  • La sincronización de seguridad (ACL) ocurre en forma automática para recursos con nombre designado.
  • Los flujos de datos, usuarios y roles creados en el nodo se sincronizan automáticamente con todos los nodos.
  • Todas las páginas de demostración y utilidades del módulo Location Intelligence (como Spatial Manager) pueden y deben apuntar al equilibrador de carga.

Equilibrador de carga

El equilibrador de carga distribuye las solicitudes entre las instancias de Spectrum Spatial. Se puede usar cualquier equilibrio de carga que admita solicitudes de HTTP/HTTP de equilibrio de carga.

Clúster de Spectrum Spatial

El clúster es una colección de instancias de Spectrum con administración de intercambio LIM, recursos con nombre asignado, contenido de metadatos geográficos y parámetros de configuración. Se pueden agregar nodos adicionales al clúster para brindar resistencia o para entregar compatibilidad para cargas mayores. Cada nodo se puede escalar verticalmente a través de recursos adicionales de hardware o instancias adicionales, en el caso de que esto se requiera para hardware con recursos masivos. Spectrum se puede configurar para usar una cantidad restringida de CPU.

Base de datos

Spectrum almacena los recursos con nombre asignado (mapas, capas, tablas y estilos), metadatos geográficos y configuración en un repositorio. En la instalación predeterminada de un solo servidor se usa una base de datos incrustada, para almacenar estos recursos en un servidor local. Para crear una solución escalable resistente, esta base de datos incrustada se debe reemplazar por una base de datos independiente y resistente. Oracle, PostGreSQL/PostGIS y Microsoft SQL Server son las bases de datos del repositorio compatibles.

En la configuración de carga equilibrada, los nodos de Spectrum copian en caché estos recursos en un índice de búsqueda y caché local en cada nodo en el clúster. Cuando un servicio Spectrum recibe una solicitud, este usa el índice y caché local para encontrar los recursos. Se pueden agregar recursos con nombre asignado a través de cualquier nodo en el clúster. Cada nodo mantiene actualizada su memoria caché al buscar diferencias entre su caché local y la base de datos central. Esta búsqueda ocurre cada 2 segundos de manera predeterminada. La frecuencia de tiempo se puede configurar. Esta arquitectura garantiza que el servidor entregue transacciones de alto rendimiento y que se mantenga en un nivel mínimo la carga en la base de datos del repositorio. Si se agrega un nuevo nodo Spectrum al clúster, la memoria caché y el índice se crean automáticamente. Dicha situación puede ocurrir para solucionar la falla de un nodo o para aumentar la capacidad de la implementación.

Recurso compartido de archivos

El recurso compartido de archivos proporciona una carpeta para mantener las imágenes de mapa generadas por Spectrum. Cuando los mapas se representan mediante el uso de los servicios web, el servidor admite las imágenes del mapa que se arrojan a través de las direcciones URL o que se arrojan como imágenes codificadas de base 64. Cuando se devuelve una dirección URL, la imagen del mapa se almacena en un archivo y se presenta a solicitud de la dirección URL. El recurso compartido de archivos se usa para almacenar las imágenes y así, garantizar que cualquier nodo de Spectrum pueda devolver una imagen de mapa.