PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → un gros conseil de programmeurs
un gros conseil de programmeurs
Débuté par Stephon, 05 avr. 2005 13:03 - 13 réponses
Posté le 05 avril 2005 - 13:03
Bonjour à tous.

Je consulte quotidiennement ce forum et j'ai pus noter les compétences de la plupart des participants.

C'est pourquoi je désirerais avoir un gros conseil.

Voilà, j'ai développer une grosse application (50 fichiers, environ 100 fenêtres...) avec HF classique.

Mais voilà, jusqu'à présent l'appli tournait en monoposte, et je désire en faire une appli multiposte.

J'ai essayé avec HF classique sur un réseau type Windows XP, c'est très lent et incofortable.

Du coup, j'ai essayé avec HF client/serveur, mais je me suis heurté à un souci car j'ai géré certaines parties de mon appli avec des transactions (non supportées par HF C/S).

Ma demande est simple (mais pas la réponse !!) : quelle solution ?

Du coté des réseaux, je ne m'y connais pas mais je ferais le nécessaire si besoin est.

Je ne sais pas si il existe un autre système de réseau qui permet de faire fonctionner mon appli avec HF classique mais rapide.

J'attends (impatiement) vos suggestions.

Merci d'avance.
Posté le 05 avril 2005 - 13:14
Si tu tiens absolument aux transactions (ce qui est compréhensible) tu
peux attendre (espérer) une version de WinDev 9 qui supportera les
transactions en C/S mais ça pourrait être long.
Perso je te conseille de te repencher sur le HF classique en
multi-poste. Il est tout à fait possible d'avoir des résultats
satisfaisants en HF classique en réseau avc 50 fichiers. Enfin ca dépend
biensûr de leur taille et de ce que tu en fais :)
Tu devrais essayer d'optimiser ton code et tes requêtes (optimisation
des clés, ...)

Stephon a écrit :
Bonjour à tous.

Je consulte quotidiennement ce forum et j'ai pus noter les compétences de la plupart des participants.

C'est pourquoi je désirerais avoir un gros conseil.

Voilà, j'ai développer une grosse application (50 fichiers, environ 100 fenêtres...) avec HF classique.

Mais voilà, jusqu'à présent l'appli tournait en monoposte, et je désire en faire une appli multiposte.

J'ai essayé avec HF classique sur un réseau type Windows XP, c'est très lent et incofortable.

Du coup, j'ai essayé avec HF client/serveur, mais je me suis heurté à un souci car j'ai géré certaines parties de mon appli avec des transactions (non supportées par HF C/S).

Ma demande est simple (mais pas la réponse !!) : quelle solution ?

Du coté des réseaux, je ne m'y connais pas mais je ferais le nécessaire si besoin est.

Je ne sais pas si il existe un autre système de réseau qui permet de faire fonctionner mon appli avec HF classique mais rapide.

J'attends (impatiement) vos suggestions.

Merci d'avance.

Posté le 05 avril 2005 - 13:30
Stephon a écrit :
Bonjour à tous.

Je consulte quotidiennement ce forum et j'ai pus noter les compétences de la plupart des participants.

C'est pourquoi je désirerais avoir un gros conseil.

Voilà, j'ai développer une grosse application (50 fichiers, environ 100 fenêtres...) avec HF classique.

Mais voilà, jusqu'à présent l'appli tournait en monoposte, et je désire en faire une appli multiposte.

J'ai essayé avec HF classique sur un réseau type Windows XP, c'est très lent et incofortable.

Du coup, j'ai essayé avec HF client/serveur, mais je me suis heurté à un souci car j'ai géré certaines parties de mon appli avec des transactions (non supportées par HF C/S).

Ma demande est simple (mais pas la réponse !!) : quelle solution ?

Du coté des réseaux, je ne m'y connais pas mais je ferais le nécessaire si besoin est.

Je ne sais pas si il existe un autre système de réseau qui permet de faire fonctionner mon appli avec HF classique mais rapide.

J'attends (impatiement) vos suggestions.

Merci d'avance.


Il n'y a pas 36 solution AMHA :
- attendre de C/S que les transactions arrivent et cela peut prendre un
certain temps
- passer en Terminal Serveur et continuer à exécuter en local mais au
moyen de client terminaux (logiciel sur les postes). Solution la plus
efficace mais chère en matériel (gros serveur) et logiciel (licences).
- Evidement il y a d'autres solutions (réplications et consoeurs) mais
pas toujours simple à maîtriser...

++ R&B
WDForge.org
Posté le 05 avril 2005 - 13:31
Bonjour,

J'ai eut ce problème ... une solution existe avec la replication (regarde dans l'aide WD).
Inconvenient notoire si ta base existe deja : eventuellement changer toutes tes clés de table par des ID_auto codes sur 8 octets.

Sinon tout un tas de modifications à faire, pour l'instant trop contraignant pour mon appli, j'attends encore si il existe une autre solution... Par ailleurs - si j'ai bien compris ;o) - la replication permet de mettre à jour differents postes par rapport à un poste maitre, quid dezs conflits pour la modifications de meme données par diff. utilisateurs. Je crois en fait que ca marche bien si des commerciaux saisissent de nouvelles commandes par ex. et les transmettent à la maison mère... dans le cas d'un réel partage de données pas evident.

Voila pour ma participation - modeste - au problème...

Cordialement,

Stuck .
Posté le 05 avril 2005 - 14:28
Merci de vos réponses, qui, et je le regrette amèrement, ne m'apporte pas plus de clareté sur la situation.

Pour répondre à Hervé et Romuald: j'ai déjà explorer toutes les possibilités d'optimisation et le service technique m'a bien aidé pour cela. De plus, ils m'ont dit que de toutes façons, un réseau fait avec Windows XP n'est pas performant et même en installant l'appli en local, les temps d'accès sont vraiment trop longs (même si en valeur absolue, ils sont raisonnables).

Pour répondre à STuck : tu as raison, la réplication est assez lourde à gérer mais dans mon cas, ce n'est pas adaptable car je souhaite un véritable partage des données en temps réel car certaines données saisies par un utilisateur vont être immédiatement exploitées par un autre utilisateur.

En fait, il faut que vous sachiez qu'avant d'écrire ce message, j'ai quand même pas mal exploré et testé dans tous les sens avec 2 postes en réseau XP.

J'ai l'impression qu'il faut que soit je change de base de données, soit j'abandonne les transactions, qu'en pensez-vous ?

PS : j'ai (au cours de tous mes essais) mis en place HF C/S qui buggait sur les transactions (mais ça je le savais et c'était juste pour tester les temps de réponse) et l'appli tournait bien.
Posté le 05 avril 2005 - 14:40
si vraiment tu ne peux plus rien faire pour tes temps de réponse alors
oui, il faudra passer en HF C/S et abandonner les transactions (en
attendant qu'elles soient supportées)

Stephon a écrit :
Merci de vos réponses, qui, et je le regrette amèrement, ne m'apporte pas plus de clareté sur la situation.

Pour répondre à Hervé et Romuald: j'ai déjà explorer toutes les possibilités d'optimisation et le service technique m'a bien aidé pour cela. De plus, ils m'ont dit que de toutes façons, un réseau fait avec Windows XP n'est pas performant et même en installant l'appli en local, les temps d'accès sont vraiment trop longs (même si en valeur absolue, ils sont raisonnables).

Pour répondre à STuck : tu as raison, la réplication est assez lourde à gérer mais dans mon cas, ce n'est pas adaptable car je souhaite un véritable partage des données en temps réel car certaines données saisies par un utilisateur vont être immédiatement exploitées par un autre utilisateur.

En fait, il faut que vous sachiez qu'avant d'écrire ce message, j'ai quand même pas mal exploré et testé dans tous les sens avec 2 postes en réseau XP.

J'ai l'impression qu'il faut que soit je change de base de données, soit j'abandonne les transactions, qu'en pensez-vous ?

PS : j'ai (au cours de tous mes essais) mis en place HF C/S qui buggait sur les transactions (mais ça je le savais et c'était juste pour tester les temps de réponse) et l'appli tournait bien.

Posté le 05 avril 2005 - 15:15
Salut,

As-tu fait des essais avec un vrai réseau. C'est à dire un serveur avec
un OS serveur (W2K server par exemple) et des postes clients ?
La base de donneés sur le poste serveur et le programme sur chaque poste
client.

Espérant faire avancer le chimilblic

Stephan
Posté le 05 avril 2005 - 17:08
Les transactions sont quand même très importantes, enfin quand on tiens à l'intégrité des données de la base.
Si tu ne parviens pas à avoir de temps d'accès corrects en HF classique, plutôt que d'abandonner les transactions, profite de l'ouverture de Windev et change de base ! Il existe tout un panel de SGBD libres et performants ( FireBird, MaxDB, PostGreSQL... ). J'exclue volontairement MySQL qui ne gère pas nativement les transactions, ni l'intégrité référentielle.

Frédéric.
Posté le 05 avril 2005 - 21:42
Et bein voilà une réponse qui m'interesse !

Ce serait, selon toi (Stef), un pb de type de serveur ou, comme je l'ai nommé plus haut, le système de réseau à changer ?

Je vais essayer de me renseigner là dessus.

Au passage, y a-t-il quelqu'un dans mon cas ?

Je pense que quelqu'un à bien développer une appli pour une utilisation multi-utilisateur avec un réseau Win XP ?

En tout cas, merci beaucoup à vous tous, vraiment sympa.
Posté le 05 avril 2005 - 23:52
Salut,

Toutes mes appli sont en réseau W2K server (500 postes).

J'utilise des install de type LIVE UPDATE avec WD9. Les données sont stockées sur le serveur. Les exe sur les postes client. Les mises à jour sont alors facile.

Mon LAN est en 100 Mbits.

Les temps de réponses sont hyper rapide. Il faut surtout bien optimiser tes clés (cela peut diviser par 100 tes temps de réponses). Utilise un max les vues Hyperfile.

Voila.
Abandonne ton réseau XP. Un serveur coute moins de 1000 euros ( www.dell.fr )

Bon courage.
Posté le 06 avril 2005 - 00:54
Pour ma part, j'utilise également une grosse application.
Les meilleurs résultats sont obtenus avec un OS serveur. Pas de doute là
dessus et mon application tourne correctement.
Attention en XP, dans les propriétés réseau, il faut désinstaller le
contrôle de qualité QOS sous peine de gros ralentissements. (A faire sur
l'ensemble des postes)
Dans certains cas extrèmes, affichage d'une table > 20sec et sans immédiat
!!
en espérant t'avoir fait avancer.

Bon dev ;-)

"Stephon" <stephoncoco@yahoo.fr> a écrit dans le message de
news:425248fe$1@news.pcsoft.fr...


Bonjour à tous.

Je consulte quotidiennement ce forum et j'ai pus noter les compétences de

la plupart des participants.

C'est pourquoi je désirerais avoir un gros conseil.

Voilà, j'ai développer une grosse application (50 fichiers, environ 100

fenêtres...) avec HF classique.

Mais voilà, jusqu'à présent l'appli tournait en monoposte, et je désire en

faire une appli multiposte.

J'ai essayé avec HF classique sur un réseau type Windows XP, c'est très

lent et incofortable.

Du coup, j'ai essayé avec HF client/serveur, mais je me suis heurté à un

souci car j'ai géré certaines parties de mon appli avec des transactions
(non supportées par HF C/S).

Ma demande est simple (mais pas la réponse !!) : quelle solution ?

Du coté des réseaux, je ne m'y connais pas mais je ferais le nécessaire si

besoin est.

Je ne sais pas si il existe un autre système de réseau qui permet de faire

fonctionner mon appli avec HF classique mais rapide.

J'attends (impatiement) vos suggestions.

Merci d'avance.

Posté le 06 avril 2005 - 09:47
Toutes les réponses que j'ai lues se tiennent.

Je vais donc y apporter ma contribution :

1- comment est ton réseau : cable, fil, vitesse
2- j'utilise un réseau cablé en 100 (classique et je n'y ai pas rouché depuis trois ans)
3-j'ai une partition sur un disque ou sont stockées tous mes fichiers de données correspondant à une appli
4-sur chaque poste qui utilise l'appli, j'ai un répertoire appelé de façon très originale WD_Appli
5- dans ce répertoire je mets tout ce qui se trouve dans le rep EXE du projet de l'appli, après compilation
6- pour la compilation, je prévois multi utilisateur

Tout ca, ça fonctionne sans problème

Bon Dév
JFF
Posté le 06 avril 2005 - 15:21
Complètement d'accord avec toi il faut un vrai serveur !

"Francis DUHAUT" <fduhaut@club-internet.fr> a écrit dans le message de
news:4252e105$1@news.pcsoft.fr...
Salut,

Toutes mes appli sont en réseau W2K server (500 postes).

J'utilise des install de type LIVE UPDATE avec WD9. Les données sont

stockées sur le serveur. Les exe sur les postes client. Les mises à jour
sont alors facile.

Mon LAN est en 100 Mbits.

Les temps de réponses sont hyper rapide. Il faut surtout bien optimiser

tes clés (cela peut diviser par 100 tes temps de réponses). Utilise un max
les vues Hyperfile.

Voila.
Abandonne ton réseau XP. Un serveur coute moins de 1000 euros (

www.dell.fr )

Bon courage.


Posté le 06 avril 2005 - 21:20
"Frédéric DEMILLY" <f.demilly@pacificpeche.fr> a écrit dans le message de
news:4252823a$1@news.pcsoft.fr...

Les transactions sont quand même très importantes, enfin quand on tiens à

l'intégrité des données de la base.
> Si tu ne parviens pas à avoir de temps d'accès corrects en HF classique,
plutôt que d'abandonner les transactions, profite de l'ouverture de Windev
et change de
base ! Il existe tout un panel de SGBD libres et performants ( FireBird,

MaxDB, PostGreSQL... ). J'exclue volontairement MySQL qui ne gère pas
nativement
>les transactions, ni l'intégrité référentielle.

Concernant MySQL tu es resté en quelle version car avec la 4 MySQL gère le
InnoDB nativement.

--
Emmanuel Lecoester