Les fichiers objectgrid.xml et deployment.xml sont nécessaires pour démarrer les serveurs de conteneur.
L'exemple utilise les fichiers objectgrid.xml et deployment.xml qui se trouvent dans le répertoire racine_install_wxs/ObjectGrid/gettingstarted/xml. Ces fichiers sont envoyés aux commandes de démarrage pour démarrer les serveurs de conteneur et un serveur de catalogue. Le fichier objectgrid.xml est le fichier XML descripteur d'ObjectGrid. Le fichier deployment.xml est le fichier XML descripteur de la stratégie de déploiement ObjectGrid. Ensemble, ces fichiers définissent une topologie répartie.
Un fichier XML de descripteur d'ObjectGrid permet de définir la structure de la grille d'objets utilisée par l'application. Il contient la liste des configurations de mappes de sauvegarde. Ces mappes de sauvegarde stockent les données en cache. L'exemple suivant présente un fichier d'exemple objectgrid.xml. Les premières lignes de ce fichier incluent l'en-tête requis de chaque fichier XML ObjectGrid. Cet exemple de fichier définit l'ObjectGrid Grid avec les mappes de sauvegarde Map1 et Map2.
<objectGridConfig xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://ibm.com/ws/objectgrid/config ../objectGrid.xsd"
xmlns="http://ibm.com/ws/objectgrid/config">
<objectGrids>
<objectGrid name="Grid">
<backingMap name="Map1" />
<backingMap name="Map2" />
</objectGrid>
</objectGrids>
</objectGridConfig>
Le fichier XML de descripteur de règle de déploiement est conçu pour être couplé avec le fichier XML d'ObjectGrid correspondant, le fichier objectgrid.xml. Dans l'exemple suivant, les premières lignes du fichier deployment.xml incluent l'en-tête requis de chaque fichier XML de règle de déploiement. Le fichier définit l'élément objectgridDeployment pour la grille ObjectGrid définie dans le fichier objectgrid.xml. Les mappes de sauvegarde Map1 et Map2 définies dans la grille ObjectGrid sont incluses dans le groupe de mappes mapSet pour lequel les attributs numberOfPartitions, minSyncReplicas et maxSyncReplicas sont configurés.
<deploymentPolicy xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://ibm.com/ws/objectgrid/deploymentPolicy
../deploymentPolicy.xsd"
xmlns="http://ibm.com/ws/objectgrid/deploymentPolicy">
<objectgridDeployment objectgridName="Grid">
<mapSet name="mapSet" numberOfPartitions="13" minSyncReplicas="0"
maxSyncReplicas="1" >
<map ref="Map1"/>
<map ref="Map2"/>
</mapSet>
</objectgridDeployment>
</deploymentPolicy>
L'attribut numberOfPartitions de l'élément mapSet indique le nombre de partitions de l'élément mapSet. Il s'agit d'un attribut facultatif et sa valeur par défaut est 1. La valeur doit être adaptée à la capacité anticipée de la grille de données.
L'attribut minSyncReplicas de l'élément mapSet vise à indiquer le nombre minimal de fragments réplique synchrones de chaque partition du groupe de mappes. Il s'agit d'un attribut facultatif et sa valeur par défaut est égale à 0. Le fragment primaire et le fragment réplique ne sont pas positionnés tant que le domaine ne peut pas prendre en charge le nombre minimal de fragments réplique synchrones. Pour prendre en charge la valeur minSyncReplicas, vous avez besoin d'un nombre de conteneurs égal à la valeur de minSyncReplicas plus un. Si le nombre de fragments réplique synchrones est inférieur à la valeur de minSyncReplicas, les transactions d'écrire ne sont plus autorisées pour cette partition.
L'attribut maxSyncReplicas de l'élément mapSet vise à indiquer le nombre maximal de fragments réplique synchrones de chaque partition du groupe de mappes. Il s'agit d'un attribut facultatif et sa valeur par défaut est égale à 0. Aucune autre réplique synchrone n'est placée pour une partition une fois qu'un domaine a atteint ce nombre de fragments réplique synchrones pour cette partition spécifique. L'ajout de conteneurs prenant en charge cette grille d'objets peut entraîner un nombre croissant de fragments réplique synchrones si la valeur maxSyncReplicas n'a pas déjà été atteinte. L'exemple définit la valeur maxSyncReplicas sur 1, ce qui signifie que le domaine place au maximum une réplique synchrone. Si vous démarrez plusieurs instances de serveurs de conteneur, seule une réplique synchrone sera placée dans une des instances de serveurs de conteneur.