Architecture en cluster pour le module Location Intelligence

Dans un environnement en cluster, le traitement est partagé entre deux ou plusieurs instances du serveur. Le schéma ci-dessous illustre l'architecture de déploiement de cette configuration. L'équilibrage de charge peut être utilisé pour prendre en charge une grande disponibilité et une forte évolutivité. L'architecture de déploiement inclut un équilibreur de charge, un cluster Spectrum Spatial, une base de données et un partage de fichiers. Grâce à cette approche, il est possible de faire l'évoluer l'architecture à l'horizontale comme à la verticale. Vous pouvez mettre le module Location Intelligence en cluster avec ou sans mise en cluster de plate-forme.

Remarque : Il est recommandé de configurer un cluster Spectrum™ Technology Platform et un cluster du module Location Intelligence, car cela présente plusieurs avantages :
  • La synchronisation de la sécurité (ACL) s’effectue automatiquement pour les ressources nommées.
  • Les flux de données, les utilisateurs et rôles créés sur un nœud sont automatiquement synchronisés avec tous les nœuds.
  • Tous les utilitaires et toutes les pages de démo du module Location Intelligence (comme Spatial Manager) peuvent pointer vers l’équilibreur de charge.

Équilibreur de charge

L'équilibreur de charge distribue les requêtes entre les instances Spectrum Spatial. Il est possible d'utiliser n'importe quel équilibreur de charge capable d'équilibrer les charges des requêtes HTTP/HTTPS.

Cluster Spectrum Spatial

Le cluster est un ensemble d'instances Spectrum avec une administration de partage LIM, des ressources nommées, du contenu de métadonnées géographiques et des paramètres de configuration. Vous pouvez ajouter d'autres nœuds au cluster à des fins de résilience ou pour gérer des charges supérieures. En cas de besoin, pour le matériel disposant d'énormes ressources, chaque nœud est capable d'évoluer à la verticale via l'ajout de ressources matérielles supplémentaires et/ou d'instances complémentaires. Spectrum peut être configuré pour utiliser un nombre limité d'UC.

Base de données

Spectrum enregistre les ressources nommées (cartes, couches, tables et styles), les métadonnées géographiques et la configuration dans un référentiel. Dans une installation avec un seul serveur par défaut, une base de données intégrée sert à stocker ces ressources sur le serveur local. Pour créer une solution évolutive résiliente, il convient de remplacer cette base de données intégrée par une base de données résiliente indépendante. Oracle, PostGreSQL (PostGIS) et Microsoft SQL Serveur sont les bases de données de référentiel prises en charge.

Dans une configuration d'équilibrage de charge, les nœuds Spectrum mettent ces ressources dans une mémoire cache et un index de recherche locaux au niveau de chaque nœud du cluster. Lorsqu'un nœud Spectrum reçoit une requête, il utilise la mémoire cache et l'index locaux pour trouver des ressources. Il est possible d'ajouter des ressources nommées via n'importe quel nœud du cluster. Chaque nœud conserve sa mémoire cache en cours en vérifiant les différences entre sa mémoire cache locale et la base de données centrale. Par défaut, cette vérification se produit toutes les deux secondes. Cette fréquence est configurable. Cette architecture garantit des transactions extrêmement performantes de la part du serveur et une charge minimale imposée à la base de données du référentiel. Si un nouveau noeud Spectrum est ajouté au cluster, sa mémoire cache et son index sont automatiquement créés. Un tel scénario peut se produire pour remédier à la panne d'un nœud ou pour augmenter la capacité du déploiement.

Partage de fichiers

Le partage de fichiers fournit un dossier contenant les images des cartes générées par Spectrum. Lors du rendu des cartes via les Services Web, le serveur gère les images des cartes renvoyées par des URL ou sous forme d'images codées de type base 64. Lorsqu'une URL est renvoyée, l'image de la carte est enregistrée sous forme de fichier et servie lorsque l'URL fait l'objet d'une requête. Pour garantir la capacité de tout nœud Spectrum à renvoyer l'image de la carte, il est utilisé un partage de fichiers qui stocke les images.