A la recherche des idées

Je cherche des idées pour le projet qui suit et peut être quelq’un à une vision différente de la mienne.

Les pré mises : J’ai deux serveurs v17 ou v18 situées à Kiev et Palerme

Les bases de données sont identiquesLes deux serveurs peuvent communiquer entre eux par une liaison sécuriséeLes deux serveurs travaillent au même temps
Les utilisateurs de deux serveurs travaillent sur leur fichier de données (un à Barcelone et l’autre à Miami) mais je souhaite synchroniser les deux serveurs en temps réel. Cet à dire que les updates, créations et suppressions des uns soient transmises et incorporés dans l’autre serveur et vice versa et bien sur, le tout en temps réel

Pour cela j’ai déjà exploré pas mal de pistes mais avec des résultats pas très satisfaisants :

1 - La synchronisation via SQL de 4D par les commandes de Replication et Synchronization.ça marche mais trop lente et peu robuste d’un point de vu de code informatique

2 - La synchronisation via http en utilisant une table de synchronisation ou chaque stock ou delete d’un enregistrement va créer un enregistrement dans cette table puis transmis au serveur opposé par une requête http. ça marche aussi mais ça ralenti énormément les utilisateurs

3 - L’utilisation de 4D par une interface web légère permettant ainsi d’avoir un seul serveur et un seul fichier des données. En théorie ça doit marcher mais les interfaces sont assez complexes et ça demande beaucoup de travail pour developper lesdites interfaces. Pour l’instant j’ai mis de coté cette solution

4 - L’utilisation d’un seul serveur avec ses données et la connexion à distance avec 4D via le vpn interne. Trop lente, quasi inutilisable

5 - L’utilisation d’une solution remote desktop : fonctionne mais parfois lente et technologiquement un peu trop vielle comme techno.

J’ai vu qu’avec la v18 on peux attaquer plusieurs fichiers de données simultanément mais pas encore de retour la dessus.

Merci de vos contributions

Salut Carlos,

1 et 2 : j’ai eu des solutions “multidatas synchronisés”, il faut éviter, c’est lourd de conséquences. Le problème n’est pas tant la façon dont on échange les données que les règles à appliquer (ajouter, modifier, supprimer), pas simple.

3 : j’ai une expérience quasi nulle du client léger, mais les développeurs que je connais qui font les deux (client 4D et client léger) disent tous que c’est beaucoup plus long qu’en 4D et que ça bouleverse complètement la façon de concevoir tout l’interface. En plus avec 4D on a la chance d’être sur un produit qui évolue “en douceur”, en web j’ai parfois l’impression que ça change de techno tous les 2 ans…

5 : le remote desktop, c’est quand on a la flemme de se demander pourquoi ça n’avance pas alors qu’on utilise 4D comme sur un lan d’il y a 20 ans (je vais me faire taper dessus mais je m’en fous, virtuellement, c’est indolore).

4 : c’est ce que je choisirais, a priori ; ça demandera un gros travail, c’est sûr, mais je parie que c’est là que j’en aurai le moins et 4D {a fait / continue de faire / n’a d’autre choix que de faire} de gros efforts pour ce contexte d’utilisation.

  • est-ce que leur internet est correct (mail, web…) ?
  • quel est le temps de ping entre le client et le serveur ?

Bonjour

Je pense que le problème est de vouloir avoir plusieurs bases de données et faire de la synchro entres-elles.
Si chacun site met à jour des données utilisées par un autre, alors une seule “instance” doit être vivante => 1 seule base de données. C’est ce qui ce fait dans le monde SAP pour les moyennes et grosses entreprises.
Par contre, tout est mis en oeuvre au niveau de la sauvegarde, la création de fichiers de logs pour pouvoir réparer et intervenir en cas de problème.

Quand à l’accès, je rejoins l’avis d’Arnaud qui serait de le faire en 4D et non via un client léger.
Autre possibilité mais qui demande les compétences adéquates, un accès via citrix (si cela rejoins idée d’une solution remote).

Dans tous les cas, j’éviterai absolument la communication de mise à jour dans les 2 sens, car le jour où il y a un problème, quelle base de données serait la bonne ? Barcelone ou Miami ?

Patrick