Procédure : mesurer la latence et valider les connexions pour la réplication transactionnelle (programmation RMO)

Pour la réplication transactionnelle, il est important de pouvoir vérifier que les serveurs sont connectés et de mesurer la latence. Vous mesurez la latence à l'aide de jetons de suivi. La latence correspond à la durée qui s'écoule pour que les modifications effectuées sur le serveur de publication soient répercutées sur les Abonnés. Pour plus d'informations, consultez Mesure de la latence et validation des connexions pour la réplication transactionnelle. Ces informations peuvent être obtenues par programmation à l'aide des objets RMO (Replication Management Objects).

Pour publier un jeton de suivi sur une publication transactionnelle

  1. Créez une connexion au serveur de publication en utilisant la classe ServerConnection.

  2. Créez une instance de la classe TransPublication.

  3. Définissez les propriétés Name et DatabaseName de la publication, et définissez la propriété ConnectionContext avec la connexion créée à l'étape 1.

  4. Appelez la méthode LoadProperties pour obtenir les propriétés de l'objet. Si cette méthode retourne false, soit les propriétés de la publication ont été définies de manière incorrecte à l'étape 3, soit la publication n'existe pas.

  5. Appelez la méthode PostTracerToken. Cette méthode insère un jeton de suivi dans le journal des transactions de la publication.

Pour déterminer la latence et valider les connexions d'une publication transactionnelle

  1. Créez une connexion au serveur de distribution en utilisant la classe ServerConnection.

  2. Créez une instance de la classe PublicationMonitor.

  3. Définissez les propriétés Name, DistributionDBName, PublisherName, et PublicationDBName, et définissez la propriété ConnectionContext avec la connexion créée à l'étape 1.

  4. Appelez la méthode LoadProperties pour obtenir les propriétés de l'objet. Si cette méthode retourne false, soit les propriétés de surveillance de la publication ont été définies de manière incorrecte à l'étape 3, soit la publication n'existe pas.

  5. Appelez la méthode EnumTracerTokens. Effectuez un cast de l'objet ArrayList retourné en un tableau d'objets TracerToken.

  6. Appelez la méthode EnumTracerTokenHistory. Passez une valeur de TracerTokenID()()()() pour un jeton de suivi de l'étape 5. Les informations de latence pour le jeton de suivi sélectionné sont ainsi retournées comme objet DataSet. Si toutes les informations de jeton de suivi sont retournées, la connexion entre le serveur de publication et le serveur de distribution et la connexion entre le serveur de distribution et l'Abonné existent et la topologie de réplication fonctionne.

Pour supprimer les jetons de suivi

  1. Créez une connexion au serveur de distribution en utilisant la classe ServerConnection.

  2. Créez une instance de la classe PublicationMonitor.

  3. Définissez les propriétés Name, DistributionDBName, PublisherName, et PublicationDBName, et définissez la propriété ConnectionContext avec la connexion créée à l'étape 1.

  4. Appelez la méthode LoadProperties pour obtenir les propriétés de l'objet. Si cette méthode retourne false, soit les propriétés de surveillance de la publication ont été définies de manière incorrecte à l'étape 3, soit la publication n'existe pas.

  5. Appelez la méthode EnumTracerTokens. Effectuez un cast de l'objet ArrayList retourné en un tableau d'objets TracerToken.

  6. Appelez la méthode CleanUpTracerTokenHistory. Passez l'une des valeurs suivantes :

    • TracerTokenID()()()() pour un jeton de suivi de l'étape 5. Les informations d'un jeton sélectionné sont alors supprimées.

    • Un objet DateTime. Les informations pour tous les jetons plus anciens que les date et heure spécifiées sont alors supprimées.