Aller au contenu
EN FR

Data Synchronizer

Statut documentaire : architecture — voir Maturité et preuves.

Rôle

Le Data Synchronizer est le pattern applicatif de synchronisation permettant d'exécuter des workers de synchronisation distribuée avec le logiCells Runtime.

Un synchronizer coordonne configuration, routage, cycle de vie, état et transfert des opérations de synchronisation. Il doit être considéré comme une capacité Runtime et non comme un objet métier.

Forme applicative typique

using var synchronizer = new DataSynchronizer(runtime);
synchronizer.Configure(options);
synchronizer.StateChanged += OnStateChanged;
await synchronizer.StartAsync(cancellationToken);

Le type généré et ses membres exacts sont définis par le binding de synchronisation publié. Lorsqu'un package utilise d'autres noms générés, utiliser sa référence API.

Modèle opérationnel

Un synchronizer de production doit exposer ou rendre observables :

  • identité de la réplique ;
  • état de connexion ;
  • état du journal/checkpoint ;
  • sélection des routes ;
  • lag courant ;
  • compteurs de retries et rejets ;
  • comportement de démarrage, arrêt et cancellation.

Règles de frontière

  • ne pas persister des ObjectRef comme identité de réplique ou identité métier ;
  • ne pas coupler les mutations métier à un transport unique ;
  • ne pas considérer qu'un transport connecté signifie que la synchronisation est prête ;
  • ne pas permettre à une destination lente de provoquer une croissance mémoire non bornée.

Statut

Cette page documente le pattern public d'intégration. L'ancienne configuration XML agents/controllers/resolvers n'est pas certifiée ici comme contrat stable entre versions.