DEFI: Synchronisation des données

Fermé
Pot7 Messages postés 5 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 5 novembre 2003 - 4 nov. 2003 à 14:49
blux Messages postés 26001 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 24 avril 2024 - 5 nov. 2003 à 15:05
Je désire développer des applications autonomes (sur des ordinateurs portatifs et à la maison) et dont le data sera synchronisé sur demande avec le data d'un ordinateur central. Un peu dans le même genre qu'un Palm peut le faire mais cette fois avec des données et des transactions.

L'application proposée est une liste de prix qui pourra être mise à jour autant par le siège social que par le représentant à la maison. Tous les soirs une synchronisation pourra être exécutée.

Je ne cherche pas à ré-inventer la roue alors si quelqu'un connait une méthode, une piste ... j'en serai très heureux.

Merci

Jean-Pierre

7 réponses

blux Messages postés 26001 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 24 avril 2024 3 289
4 nov. 2003 à 15:31
Salut,

Comme ça de manière simple :

- les données ont un champ horodatage
- lorsqu'une mise à jour est demandée, on contrôle qui a la date la plus récente pour mettre à jour
- on bloque les ressources, et on lance une transaction avec commit à deux phases, car il faut mettre à jour les données du central et les données du local
- pour gagner du temps, il est important de conserver la dernière date de mise à jour des données, ça évite de parcourir toute la base et de comparer un à un les prix entre central et local

euhhh, sinon, c'est pas un défi, c'est juste de l'informatique ;-)

A toi de programmer... :-)

A+ Blux
 "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"
0
Pot7 Messages postés 5 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 5 novembre 2003
4 nov. 2003 à 16:26
pour la programmation je comprend bien la mécanique mais pour ce qui est de la transmission j'en perd mon latin...

- pour être efficace et performant, est-ce que les fichiers doivent être transféré du local vers le central avant d'être traités;
- qu'est-ce qui arrive si la communication est coupée lors de la transmission;
- si j'ai 20 utilisateurs à la maison, comment techniquement les traiter ... simultanément ou pas

Merci de ton aide !
0
blux Messages postés 26001 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 24 avril 2024 3 289
4 nov. 2003 à 16:39
- pour être efficace et performant, est-ce que les fichiers doivent être transféré du local vers le central avant d'être traités;
Tout dépend de la technique employée : C/S, transmission simple...

- qu'est-ce qui arrive si la communication est coupée lors de la transmission;
C'est l'intérêt du 2-phase commit, si l'un des deux participants à la transaction n'acquitte pas sa bonne terminaison, alors tout le monde est parti pour un rollback. Mais le cas ne se pose pas si tu es en simple transmission de fichiers avec traitement non synchronisé.

- si j'ai 20 utilisateurs à la maison, comment techniquement les traiter ... simultanément ou pas
Tout dépend de la technique employée... :-)

Faut voir tes contraintes : nécessité ou non d'avoir les prix à jour 24h/24h ou alors peut-être qu'une MAJ le soir pour le lendemain suffit...

Une bonne analyse du problème devrait répondre à tes interrogations... ;-)))

A+ Blux
 "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"
0
Pot7 Messages postés 5 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 5 novembre 2003
4 nov. 2003 à 17:05
Merci blux !

Si je résume la méthode idéale ...

1- transmission journalière via FTP, pcq je veux minimiser le temps de connexion
2- traitement sur l'ordinateur central
3- boucle -traitement 1 et 2 pour les 20 utilisateurs-
4- transmission du central vers le local ( x 20) des données à jour

Qu'est-ce que t'en penses ?
0
blux Messages postés 26001 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 24 avril 2024 3 289
4 nov. 2003 à 17:17
C'est l'idéal si tes données supportent une MAJ quotidienne, compréhensible quand on parle de prix : il vaut mieux traiter une journée avec les mêmes prix pour tout le monde.

Reste à éduquer tes utilisateurs pour une trans en fin de journée et une trans avant de redémarrer l'autre journée...
D'ailleurs, il vaut mieux que les locaux viennent chercher les données, plutôt que ce soit le central qui les envoie, ça évite aux locaux de rester en ligne trop longtemps.

Et puis mettre quelques contrôles lors de la trans, car FTP n'est qu'un protocole, pas un moniteur, il ne sait pas surveiller et agir si problème...

1 - Envoi des n fichiers sur un serveur
2 - contrôle éventuel de l'arrivée de tous les fichiers (avec action si pas tout arrivé)
3 - traitement des MAJ
4 - mise à disposition des données à jour
5 - récupération par les locaux
6 - mise à jour des données par les locaux

Bin sûr il faut que les locaux soient informés si le traitement a réussi afin de ne pas charger inutilement des fichiers vides ou pas à jour (le mieux est de les supprimer quand on commence le traitement sur le central, car ils peuvent éventuellement servir de back-up à un poste si les données s'effacent dans la journée)

A+ Blux
 "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"
0
Pot7 Messages postés 5 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 5 novembre 2003
4 nov. 2003 à 17:52
Existe-t-il autre chose (logiciel?) que FTP qui me permettrait de faire une transmission simple de fichiers via le web avec les contrôles de base (sécurité, accusé réception, reprise automatique si interruption, etc).

Merci encore !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
blux Messages postés 26001 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 24 avril 2024 3 289
5 nov. 2003 à 09:03
je n'en connais qu'un : CFT (cross file transfer)
mais tu peux le développer toi-même : tu mets un MD5 sur le fichier pour assurer l'intégrité de la transmission, tu fais un serveur FTP avec reprise possible, et tu codes un client FTP avec tous les bons trucs qui vont bien..

A+ Blux
 "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"
0
Pot7 Messages postés 5 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 5 novembre 2003
5 nov. 2003 à 14:10
Merci ... quelle efficacité !

Bonne journée !
0
blux Messages postés 26001 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 24 avril 2024 3 289
5 nov. 2003 à 15:05
quelle efficacité !

C'est le but du jeu !
(et mon métier, aussi :-))

A+ Blux
 "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"
0