Domaines de bases de données partagées

Pour optimiser leur disponibilité, vous pouvez répartir les données du portail entre plusieurs bases de données et, pour certains domaines, partager ces données entre plusieurs lignes de production. Vous pouvez décider de transférer un seul ou plusieurs domaines de base de données.

Lorsque vous séparez les données d'HCL, vous pouvez stocker chaque catégorie de données dans son propre jeu de tables de bases de données ou dans le système de fichiers. Les domaines de base de données gèrent le stockage et le transfert de données par catégorie, par exemple, Configuration, Release, Customization, Community et IBM® Java Content Repository (JCR). Lorsque vous séparez vos données, vous pouvez partager des domaines entre plusieurs portails. Vous pouvez également utiliser les différents domaines pour divers types de base de données. Vous pouvez, par exemple, choisir de conserver les données LikeMinds dans votre base de données par défaut et transférer toutes les autres vers une autre base de données. La séparation des domaines permet de prendre en charge les environnements de production, où les noeuds de production sont partagés en différents clusters. Chaque cluster peut opérer indépendamment mais partager les domaines de base de données Community et Customization, par exemple. Chacun de ces clusters est appelé line of production.

Les préférences sont conservées dans des couches qui sont modifiables en fonction des modes de portlet. Par exemple, il existe une couche de préférences par défaut définies par le descripteur de déploiement du portlet. Cette couche est modifiable dans le mode CONFIG pris en charge par HCL. Dans WebSphere® Application Server, les valeurs du descripteur de déploiement de portlet sont en lecture seule. HCL apporte un niveau supplémentaire de préférences permettant aux administrateurs de portail de spécifier des valeurs par défaut différentes par fenêtre de portlet. Cette fonction est prise en charge par le biais du mode de portlet EDIT_DEFAULTS et s'applique à tous ceux qui utilisent la même fenêtre de portlet. Une couche de préférence de ce type n'existe pas dans WebSphere® Application Server. Les produits prennent en charge les modes standard : VIEW, EDIT et HELP. Lorsqu'un utilisateur personnalise un portlet sur une page dans n'importe quel mode standard, l'utilisateur peut modifier ses préférences de portlet personnelles. Les préférences par défaut basées sur la page ou sur le portlet ne peuvent pas être définies dans un mode standard ; vous devez pour cela utiliser les modes de portlet personnalisés. Les préférences de portlet sont conservées dans le domaine de personnalisation lorsqu'elles sont stockées par les utilisateurs (généralement en mode édition) au niveau de l'entité. En revanche, lorsque vous utilisez le mode de configuration, vous travaillez au niveau de la définition du portlet et les préférences de portlet sont stockées au niveau de l'édition.

z/OS® uniquement : Vous pouvez transférer les données depuis n'importe quel type de base de données pris en charge vers un autre, avec les exceptions suivantes :
  • Les données ne peuvent pas être transférées vers une base de données Derby Apache.
  • Les données ne peuvent pas être transférées depuis une base de données IBM® DB2 Universal Database for z/OS®.

z/OS® uniquement : Les deux systèmes de gestion de base de données pris en charge pour HCL sont Derby et DB2® for z/OS®. Par conséquent, le transfert de données peut être effectué uniquement depuis Derby vers DB2® for z/OS®.

Le tableau ci-après répertorie les domaines de base de données pris en charge, indique si un domaine peut être partagé et contient des remarques.
Tableau 1. Domaines de bases de données prises en charge
Domaine de base de données Partageable Remarques
Edition non Dans un environnement constitué de plusieurs lignes de production, chaque cluster possède une copie des données Release.

Le domaine est considéré en tant que données d'édition et promu sur des lignes de production sur une base individuelle.

Personnalisation oui Dans un environnement constitué de plusieurs lignes de production, les données de personnalisation sont stockées dans une base de données partagée par ces lignes de production. Par conséquent, les données sont automatiquement synchronisées dans les lignes de production.
Communauté oui
JCR non Le domaine est considéré en tant que données d'édition et promu sur des lignes de production sur une base individuelle.
Commentaires oui
LikeMinds oui
Virtual Member Manager (VMM) oui

Le partage de domaines de base de données fait référence aux accès concurrents à une même base de données physique par plusieurs lignes de production. Une configuration dans laquelle chaque ligne de production possède une copie de la réplication de données et des domaines de base de données partageables est utilisée pour synchroniser les copies qui ne sont pas prises en charge.

Le tableau suivant récapitule les modes de portlet, la base de données dans laquelle se trouvent les données, et indique si cette base de données peut être partagée :
Tableau 2. Mode de portlet et lieu de stockage des données
Type Mode de portlet Domaine Partageable entre plusieurs lignes de production
Préférences administrateur config édition non
Préférences partagées edit_defaults édition non
Préférences personnalisées éditer personnalisation oui

Pour des raisons de maintenance et de transfert, vous pouvez mettre hors service une seule ligne de production tandis qu'une autre ligne continue de prendre en charge les requêtes des anciennes données. Une fois la première ligne de production mise à jour et de nouveau remise en service, la deuxième ligne est à son tour mise à jour à l'aide du même procédé. Les mises à jour des données dans le domaine partagé sont essentielles car elles influent sur l'autre ligne de production.

La capacité de l'environnement global doit être supérieure à l'utilisation prévue, de sorte que les serveurs puissent être mis hors production sans que cela entrave la disponibilité des applications. Afin d'assurer la disponibilité de toutes les ressources système pour le portail, les systèmes de production doivent être dédiés au portail. Vous ne devez pas exécuter d'autres logiciels de serveur qui ne sont pas associés au portail.

Pour des besoins de maintenance, les domaines de base de données suivants peuvent être mis hors ligne :
  • Communauté
  • Personnalisation
  • Commentaires
  • LikeMinds
Les bases de données suivantes ne doivent pas être mises hors ligne lorsqu'HCL est démarré :
  • Edition
  • JCR
Si un domaine de base de données est hors ligne, HCL ne peut pas accéder aux données correspondantes et des messages d'erreur peuvent alors être affichés. HCL demeure actif. Lorsqu'un domaine de base de données est à nouveau disponible, HCL le détecte, se reconnecte et poursuit l'utilisation des données correspondantes. Une maintenance régulière ne doit pas affecter les domaines de base de données partagés car il est impératif que ces données soient disponibles pour toutes les lignes de production utilisées.

Configuration des caches d'entité de portlet pour plusieurs lignes de production

Vous devez configurer les paramètres de cache de portail, si vous prévoyez d'utiliser plusieurs lignes de production et si les utilisateurs de portail personnalisent des portlets pour modifier leurs préférences de portlet personnelles. Dans la mesure où le portail met en cache des entités de portlet, si la mémoire cache n'est pas actualisée, les modifications de préférence de portail créées sur la première ligne de production ne sont pas visibles sur la seconde ligne de production. Il est important de mettre en cache les entités de portlet les plus pertinentes. La désactivation de ces mémoires cache a pour conséquence de ralentir les performances du portail. Par conséquent, vous devez choisir une durée de vie de mémoire cache, qui équilibre vos besoins en matière de cohérence de données entre les lignes de production et vos besoins en matière de performances de portail. Vous pouvez configurer la durée de vie des mémoires cache de portail correspondantes com.ibm.wps.pe.portletentity et com.ibm.wps.pe.portletentitycounter. Les deux mémoires cache font plusieurs fois l'objet d'un accès lors du traitement de la demande de portail.

Pour définir la durée de vie de la mémoire cache, configurez les propriétés suivantes dans CacheManagerService. Pour plus d'informations, voir Cache Manager Service.
  • cacheinstance.com.ibm.wps.pe.portletentity.lifetime=900
  • cacheinstance.com.ibm.wps.pe.portletentitycounter.lifetime=900
Cette configuration définit une durée de vie de mémoire cache de 900 secondes. Vous pouvez choisir une autre durée de vie si nécessaire. La durée de vie de la mémoire cache doit être d'au moins 5 afin de permettre la mise en mémoire cache des entités de portlet pour une demande. Pour plus d'informations sur les mémoires cache, voir le guide d'optimisation des performances HCL Digital Experience.

Partage de bases de données VMM

La fonction de base de données VMM facilite l'utilisation de plusieurs référentiels, car elle est obtenue par le biais de la configuration et non pas du développement avec l'utilisation de la nouvelle VMM. Intrinsèquement, cette fonction vous permet de mapper des entrées depuis plusieurs référentiels utilisateur individuels à un référentiel virtuel unique. Le référentiel fédéré se compose d'un domaine nommé unique, qui est un ensemble de référentiels utilisateur indépendants. Chaque référentiel peut être intégralement externe ou, dans le cadre d'un protocole LDAP, peut correspondre à une sous-arborescence dans ce référentiel. La racine de chaque référentiel est mappée à une entrée de base au sein du référentiel fédéré, et représente un point de départ dans l'espace de nom hiérarchique du domaine virtuel. Les bases de données VMM (Virtual Member Manager) d'un référentiel complet et de l'extension de propriété peuvent être partagées entre des lignes de production. Si les bases de données VMM ne sont pas opérationnelles, HCL ne fonctionne pas.