Nous avons aujourd'hui une application C/S avec un client lourd que s'appuie sur une base SQL Server 2000. Nous souhaiterions offrir aux utilisateurs la possibilité de travailler dans l'application sans être connecté au serveur (utilisation d'un laptop, d'un terminal mobile, etc).
Evidemment, il faut que les utilisateurs nomades disposent de (ou d'une partie de) la bdd sur le poste nomade pour pouvoir travailler.
Quelle stratégie me recommandez-vous pour gérer:
- d'une part l'extraction des données ou d'une partie des données dans une copie de la base située sur le poste nomade
- d'autre part la réconciliation lors du retour du poste nomade sur le réseau de façon à ce que la base principale répercute les modifications faites par l'utilisateur nomade.
- comment gérer les conflits ? Par exemple si deux utilisateurs nomades font des modifications concurrentes ou qu'un utilisateur nomade fait une modification concurrente d'un utilisateur normal ?
Pensez-vous qu'il soit préférable de s'appuyer sur les mécanismes de publication/réplication internes à SQL Serveur ? Celà impliquerait un gros travail sur notre modèle de données pour remplacer les clés plimaires de nos tables (des int en général) par des uniqueidentifier ROWGUIDCOL. Ou bien est-ce finalement plus simple de gérer cette réplication et la réconciliation nous mêmes par programme ?
Si vous avez de l'expérience dans le domaine, j'aimerais en entendre parler. Si vous avez des conseils à me soumettre, je suis également preneur.
Merci d'avance.
Partager