J'ai actuellement de gros problème de lenteur dans mon logiciel !
J'utilise une base de données Hyperfile sur un serveur Windows 2000
Server avec un logiciel développé en Windev 8, mon problème est donc que
si j'utilise mon logiciel en local sur ce serveur, j'obtiens, par
exemple pour un traitement, un temps d'attente de 3 secondes, maintenant
en utilisant le même programme et le même traitement sur les mêmes
fichiers mais cette fois par le réseau sur un poste Client (XP Pro SP1),
j'obtiens un temps d'attente de 40 secondes, soit plus de 13 fois plus
lent, je vous laisse imaginer le temp que pourrais durer l'éxécution de
l'un de mes modules qui noralement est de 35 - 40 minutes !
Je ne vois pas comment je peut faire sachant que mon code ne devrais pas
être en cause !
J'ai actuellement de gros problème de lenteur dans mon logiciel ! J'utilise une base de données Hyperfile sur un serveur Windows 2000 Server avec un logiciel développé en Windev 8, mon problème est donc que si j'utilise mon logiciel en local sur ce serveur, j'obtiens, par exemple pour un traitement, un temps d'attente de 3 secondes, maintenant en utilisant le même programme et le même traitement sur les mêmes fichiers mais cette fois par le réseau sur un poste Client (XP Pro SP1), j'obtiens un temps d'attente de 40 secondes, soit plus de 13 fois plus lent, je vous laisse imaginer le temp que pourrais durer l'éxécution de l'un de mes modules qui noralement est de 35 - 40 minutes ! Je ne vois pas comment je peut faire sachant que mon code ne devrais pas être en cause !
Merci beaucoup !
FabSteg
Si effectivement votre "code ne devrais pas être en cause" alors il y a la solution d'en passer par TSE sur un serveur plus musclé ou en C/S mais avec WinDev 9. Sinon, peut être qu'il faut un peu optimiser les accès aux fichiers HF précisément pour alléger le trafic réseau. Evidement j'ose espérer que vos exécutables sont en local (installation type "Avec mise à jour réseau").
Bon courage ++ R&B www.WDForge.org
FabSteg a écrit :
Bonjour,
J'ai actuellement de gros problème de lenteur dans mon logiciel !
J'utilise une base de données Hyperfile sur un serveur Windows 2000
Server avec un logiciel développé en Windev 8, mon problème est donc que
si j'utilise mon logiciel en local sur ce serveur, j'obtiens, par
exemple pour un traitement, un temps d'attente de 3 secondes, maintenant
en utilisant le même programme et le même traitement sur les mêmes
fichiers mais cette fois par le réseau sur un poste Client (XP Pro SP1),
j'obtiens un temps d'attente de 40 secondes, soit plus de 13 fois plus
lent, je vous laisse imaginer le temp que pourrais durer l'éxécution de
l'un de mes modules qui noralement est de 35 - 40 minutes !
Je ne vois pas comment je peut faire sachant que mon code ne devrais pas
être en cause !
Merci beaucoup !
FabSteg
Si effectivement votre "code ne devrais pas être en cause" alors il y a
la solution d'en passer par TSE sur un serveur plus musclé ou en C/S
mais avec WinDev 9.
Sinon, peut être qu'il faut un peu optimiser les accès aux fichiers HF
précisément pour alléger le trafic réseau. Evidement j'ose espérer que
vos exécutables sont en local (installation type "Avec mise à jour réseau").
J'ai actuellement de gros problème de lenteur dans mon logiciel ! J'utilise une base de données Hyperfile sur un serveur Windows 2000 Server avec un logiciel développé en Windev 8, mon problème est donc que si j'utilise mon logiciel en local sur ce serveur, j'obtiens, par exemple pour un traitement, un temps d'attente de 3 secondes, maintenant en utilisant le même programme et le même traitement sur les mêmes fichiers mais cette fois par le réseau sur un poste Client (XP Pro SP1), j'obtiens un temps d'attente de 40 secondes, soit plus de 13 fois plus lent, je vous laisse imaginer le temp que pourrais durer l'éxécution de l'un de mes modules qui noralement est de 35 - 40 minutes ! Je ne vois pas comment je peut faire sachant que mon code ne devrais pas être en cause !
Merci beaucoup !
FabSteg
Si effectivement votre "code ne devrais pas être en cause" alors il y a la solution d'en passer par TSE sur un serveur plus musclé ou en C/S mais avec WinDev 9. Sinon, peut être qu'il faut un peu optimiser les accès aux fichiers HF précisément pour alléger le trafic réseau. Evidement j'ose espérer que vos exécutables sont en local (installation type "Avec mise à jour réseau").
Bon courage ++ R&B www.WDForge.org
FabSteg
Romuald.besset a écrit : >
Si effectivement votre "code ne devrais pas être en cause" alors il y a la solution d'en passer par TSE sur un serveur plus musclé ou en C/S mais avec WinDev 9. Sinon, peut être qu'il faut un peu optimiser les accès aux fichiers HF précisément pour alléger le trafic réseau. Evidement j'ose espérer que vos exécutables sont en local (installation type "Avec mise à jour réseau").
Bon courage ++ R&B www.WDForge.org
Mes éxécutables sont installés sur chaque poste client. Que voulez-vous dire par optimiser les accés aux Fichiers HF ?
Merci
FabSteg
Romuald.besset a écrit :
>
Si effectivement votre "code ne devrais pas être en cause" alors il y a
la solution d'en passer par TSE sur un serveur plus musclé ou en C/S
mais avec WinDev 9.
Sinon, peut être qu'il faut un peu optimiser les accès aux fichiers HF
précisément pour alléger le trafic réseau. Evidement j'ose espérer que
vos exécutables sont en local (installation type "Avec mise à jour
réseau").
Bon courage
++ R&B
www.WDForge.org
Mes éxécutables sont installés sur chaque poste client.
Que voulez-vous dire par optimiser les accés aux Fichiers HF ?
Si effectivement votre "code ne devrais pas être en cause" alors il y a la solution d'en passer par TSE sur un serveur plus musclé ou en C/S mais avec WinDev 9. Sinon, peut être qu'il faut un peu optimiser les accès aux fichiers HF précisément pour alléger le trafic réseau. Evidement j'ose espérer que vos exécutables sont en local (installation type "Avec mise à jour réseau").
Bon courage ++ R&B www.WDForge.org
Mes éxécutables sont installés sur chaque poste client. Que voulez-vous dire par optimiser les accés aux Fichiers HF ?
Merci
FabSteg
Eric Laurent
FabSteg avait prétendu :
Bonjour,
J'ai actuellement de gros problème de lenteur dans mon logiciel ! J'utilise une base de données Hyperfile sur un serveur Windows 2000 Server avec un logiciel développé en Windev 8, mon problème est donc que si j'utilise mon logiciel en local sur ce serveur, j'obtiens, par exemple pour un traitement, un temps d'attente de 3 secondes, maintenant en utilisant le même programme et le même traitement sur les mêmes fichiers mais cette fois par le réseau sur un poste Client (XP Pro SP1), j'obtiens un temps d'attente de 40 secondes, soit plus de 13 fois plus lent, je vous laisse imaginer le temp que pourrais durer l'éxécution de l'un de mes modules qui noralement est de 35 - 40 minutes ! Je ne vois pas comment je peut faire sachant que mon code ne devrais pas être en cause !
Merci beaucoup !
FabSteg
Essaye d'abord en désactivant les anti-virus. J'ai déjà eu des problèmes similaires que j'ai résolus en configurant différemment la protection.
-- Eric Laurent
(enlever nospam.)
FabSteg avait prétendu :
Bonjour,
J'ai actuellement de gros problème de lenteur dans mon logiciel !
J'utilise une base de données Hyperfile sur un serveur Windows 2000
Server avec un logiciel développé en Windev 8, mon problème est donc que
si j'utilise mon logiciel en local sur ce serveur, j'obtiens, par
exemple pour un traitement, un temps d'attente de 3 secondes, maintenant
en utilisant le même programme et le même traitement sur les mêmes
fichiers mais cette fois par le réseau sur un poste Client (XP Pro SP1),
j'obtiens un temps d'attente de 40 secondes, soit plus de 13 fois plus
lent, je vous laisse imaginer le temp que pourrais durer l'éxécution de
l'un de mes modules qui noralement est de 35 - 40 minutes !
Je ne vois pas comment je peut faire sachant que mon code ne devrais pas
être en cause !
Merci beaucoup !
FabSteg
Essaye d'abord en désactivant les anti-virus.
J'ai déjà eu des problèmes similaires que j'ai résolus en configurant
différemment la protection.
--
Eric Laurent
nospam.laurent.systel@wanadoo.fr
(enlever nospam.)
J'ai actuellement de gros problème de lenteur dans mon logiciel ! J'utilise une base de données Hyperfile sur un serveur Windows 2000 Server avec un logiciel développé en Windev 8, mon problème est donc que si j'utilise mon logiciel en local sur ce serveur, j'obtiens, par exemple pour un traitement, un temps d'attente de 3 secondes, maintenant en utilisant le même programme et le même traitement sur les mêmes fichiers mais cette fois par le réseau sur un poste Client (XP Pro SP1), j'obtiens un temps d'attente de 40 secondes, soit plus de 13 fois plus lent, je vous laisse imaginer le temp que pourrais durer l'éxécution de l'un de mes modules qui noralement est de 35 - 40 minutes ! Je ne vois pas comment je peut faire sachant que mon code ne devrais pas être en cause !
Merci beaucoup !
FabSteg
Essaye d'abord en désactivant les anti-virus. J'ai déjà eu des problèmes similaires que j'ai résolus en configurant différemment la protection.
-- Eric Laurent
(enlever nospam.)
denis
Effectivement, j'ai été confronté aux mêmes problèmes, et il s'agissait non pas du code, mais bel et bien de réglahes de l'anti-virus
"FabSteg" a écrit dans le message de news: cuagmg$1s6$
Bonjour,
J'ai actuellement de gros problème de lenteur dans mon logiciel ! J'utilise une base de données Hyperfile sur un serveur Windows 2000 Server avec un logiciel développé en Windev 8, mon problème est donc que si j'utilise mon logiciel en local sur ce serveur, j'obtiens, par exemple pour un traitement, un temps d'attente de 3 secondes, maintenant en utilisant le même programme et le même traitement sur les mêmes fichiers mais cette fois par le réseau sur un poste Client (XP Pro SP1), j'obtiens un temps d'attente de 40 secondes, soit plus de 13 fois plus lent, je vous laisse imaginer le temp que pourrais durer l'éxécution de l'un de mes modules qui noralement est de 35 - 40 minutes ! Je ne vois pas comment je peut faire sachant que mon code ne devrais pas être en cause !
Merci beaucoup !
FabSteg
Effectivement, j'ai été confronté aux mêmes problèmes, et il s'agissait non
pas du code, mais bel et bien de réglahes de l'anti-virus
"FabSteg" <dvlpt@steganux.com> a écrit dans le message de news:
cuagmg$1s6$1@s1.news.oleane.net...
Bonjour,
J'ai actuellement de gros problème de lenteur dans mon logiciel !
J'utilise une base de données Hyperfile sur un serveur Windows 2000
Server avec un logiciel développé en Windev 8, mon problème est donc que
si j'utilise mon logiciel en local sur ce serveur, j'obtiens, par
exemple pour un traitement, un temps d'attente de 3 secondes, maintenant
en utilisant le même programme et le même traitement sur les mêmes
fichiers mais cette fois par le réseau sur un poste Client (XP Pro SP1),
j'obtiens un temps d'attente de 40 secondes, soit plus de 13 fois plus
lent, je vous laisse imaginer le temp que pourrais durer l'éxécution de
l'un de mes modules qui noralement est de 35 - 40 minutes !
Je ne vois pas comment je peut faire sachant que mon code ne devrais pas
être en cause !
Effectivement, j'ai été confronté aux mêmes problèmes, et il s'agissait non pas du code, mais bel et bien de réglahes de l'anti-virus
"FabSteg" a écrit dans le message de news: cuagmg$1s6$
Bonjour,
J'ai actuellement de gros problème de lenteur dans mon logiciel ! J'utilise une base de données Hyperfile sur un serveur Windows 2000 Server avec un logiciel développé en Windev 8, mon problème est donc que si j'utilise mon logiciel en local sur ce serveur, j'obtiens, par exemple pour un traitement, un temps d'attente de 3 secondes, maintenant en utilisant le même programme et le même traitement sur les mêmes fichiers mais cette fois par le réseau sur un poste Client (XP Pro SP1), j'obtiens un temps d'attente de 40 secondes, soit plus de 13 fois plus lent, je vous laisse imaginer le temp que pourrais durer l'éxécution de l'un de mes modules qui noralement est de 35 - 40 minutes ! Je ne vois pas comment je peut faire sachant que mon code ne devrais pas être en cause !
Merci beaucoup !
FabSteg
FabSteg
Eric Laurent a écrit :
Essaye d'abord en désactivant les anti-virus. J'ai déjà eu des problèmes similaires que j'ai résolus en configurant différemment la protection.
Je viens d'essayer en désactivant l'antivirus du poste client (le serveur n'en a pas) et cela ne change rien du tout, toujours aussi lent !
Fabsteg
Eric Laurent a écrit :
Essaye d'abord en désactivant les anti-virus.
J'ai déjà eu des problèmes similaires que j'ai résolus en configurant
différemment la protection.
Je viens d'essayer en désactivant l'antivirus du poste client (le
serveur n'en a pas) et cela ne change rien du tout, toujours aussi lent !
Essaye d'abord en désactivant les anti-virus. J'ai déjà eu des problèmes similaires que j'ai résolus en configurant différemment la protection.
Je viens d'essayer en désactivant l'antivirus du poste client (le serveur n'en a pas) et cela ne change rien du tout, toujours aussi lent !
Fabsteg
Pierre BOUSQUET
as tu regardé les options de performances dans les propriétés système du Windows Server Par défaut un serveur est voué aux autres
"FabSteg" a écrit dans le message de news:cuagmg$1s6$
Bonjour,
J'ai actuellement de gros problème de lenteur dans mon logiciel ! J'utilise une base de données Hyperfile sur un serveur Windows 2000 Server avec un logiciel développé en Windev 8, mon problème est donc que si j'utilise mon logiciel en local sur ce serveur, j'obtiens, par exemple pour un traitement, un temps d'attente de 3 secondes, maintenant en utilisant le même programme et le même traitement sur les mêmes fichiers mais cette fois par le réseau sur un poste Client (XP Pro SP1), j'obtiens un temps d'attente de 40 secondes, soit plus de 13 fois plus lent, je vous laisse imaginer le temp que pourrais durer l'éxécution de l'un de mes modules qui noralement est de 35 - 40 minutes ! Je ne vois pas comment je peut faire sachant que mon code ne devrais pas être en cause !
Merci beaucoup !
FabSteg
as tu regardé les options de performances dans les propriétés système du
Windows Server
Par défaut un serveur est voué aux autres
"FabSteg" <dvlpt@steganux.com> a écrit dans le message de
news:cuagmg$1s6$1@s1.news.oleane.net...
Bonjour,
J'ai actuellement de gros problème de lenteur dans mon logiciel !
J'utilise une base de données Hyperfile sur un serveur Windows 2000
Server avec un logiciel développé en Windev 8, mon problème est donc que
si j'utilise mon logiciel en local sur ce serveur, j'obtiens, par
exemple pour un traitement, un temps d'attente de 3 secondes, maintenant
en utilisant le même programme et le même traitement sur les mêmes
fichiers mais cette fois par le réseau sur un poste Client (XP Pro SP1),
j'obtiens un temps d'attente de 40 secondes, soit plus de 13 fois plus
lent, je vous laisse imaginer le temp que pourrais durer l'éxécution de
l'un de mes modules qui noralement est de 35 - 40 minutes !
Je ne vois pas comment je peut faire sachant que mon code ne devrais pas
être en cause !
as tu regardé les options de performances dans les propriétés système du Windows Server Par défaut un serveur est voué aux autres
"FabSteg" a écrit dans le message de news:cuagmg$1s6$
Bonjour,
J'ai actuellement de gros problème de lenteur dans mon logiciel ! J'utilise une base de données Hyperfile sur un serveur Windows 2000 Server avec un logiciel développé en Windev 8, mon problème est donc que si j'utilise mon logiciel en local sur ce serveur, j'obtiens, par exemple pour un traitement, un temps d'attente de 3 secondes, maintenant en utilisant le même programme et le même traitement sur les mêmes fichiers mais cette fois par le réseau sur un poste Client (XP Pro SP1), j'obtiens un temps d'attente de 40 secondes, soit plus de 13 fois plus lent, je vous laisse imaginer le temp que pourrais durer l'éxécution de l'un de mes modules qui noralement est de 35 - 40 minutes ! Je ne vois pas comment je peut faire sachant que mon code ne devrais pas être en cause !
Merci beaucoup !
FabSteg
mat
FabSteg wrote:
Bonjour,
J'ai actuellement de gros problème de lenteur dans mon logiciel ! J'utilise une base de données Hyperfile sur un serveur Windows 2000 Server avec un logiciel développé en Windev 8, mon problème est donc que si j'utilise mon logiciel en local sur ce serveur, j'obtiens, par exemple pour un traitement, un temps d'attente de 3 secondes, maintenant en utilisant le même programme et le même traitement sur les mêmes fichiers mais cette fois par le réseau sur un poste Client (XP Pro SP1), j'obtiens un temps d'attente de 40 secondes, soit plus de 13 fois plus lent, je vous laisse imaginer le temp que pourrais durer l'éxécution de l'un de mes modules qui noralement est de 35 - 40 minutes ! Je ne vois pas comment je peut faire sachant que mon code ne devrais pas être en cause !
Bonjour,
Si ce ralentissement se produit déjà à partir d'un seul accès en réseau et le code n'est pas en cause c'est certainement un problème externe à Windev. Si, par contre, la lenteur se produit lors des accès par plusieurs utilisateurs, alors c'est probablement autre chose. Le code est peut-être quand-même en cause puisque Windev a des particularités, notamment concernant l'accès aux données sur fichiers partagés, que nous n'avons vu avec aucun autre produit avec base intégrée que nous utilisons (Access, Paradox et Visual Foxpro).
Les requêtes sont particulièrement touchées et malheureusement PC Soft n'ont jamais informé leurs clients comment elles fonctionnent. En effet, des sources d'information indépendantes disent qu'il y a deux systèmes:
1) fichiers partagés: les fichiers sont envoyé au poste requérant et la requête est traitée localement. 2) Client/Serveur: le serveur exécute la requête et envoie le résultat au poste requérant.
Or, selon notre expérience et celle d'autres utilisateurs Windev, il faut penser que les requêtes Windev sont plutôt un genre de filtre sur les données du serveur. De toute façon, la méthode d'accès choisi ralenti l'accès pour tout le monde dans le réseau. Selon PC Soft (FAQ 2861) la responsabilité pour ces lenteurs est la faute de Windows et des développeurs qui font du mauvais code. Sachant que ces problèmes de lenteurs n'existent pas avec des produits comme Paradox, Visual Foxpro et Access, il faut taxer cette information comme étant fausse.
Un fil sur cette question: http://groups-beta.google.com/group/fr.comp.developpement.agl.windev/browse_thread/thread/c7f5c82a724d04a6/986523bf3537d6f3?q=[WD+7.5+%2F+8.0]+Requ%C3%AAtes+sur+Hyperfile+et+lenteurs+r%C3%A9seau+&_done=%2Fgroup%2Ffr.comp.developpement.agl.windev%2Fsearch%3Fgroup%3Dfr.comp.developpement.agl.windev%26q%3D[WD+7.5+%2F+8.0]+Requ%C3%AAtes+sur+Hyperfile+et+lenteurs+r%C3%A9seau+%26qt_g%3D1%26searchnow%3DSearch+this+group%26&_doneTitleºck+to+Search&&d#986523bf3537d6f3
Toujours selon PC Soft, le problème disparait avec HF Client/Serveur. Seulement, selon des infos qu'on trouve, HF C/S ne supporte pas (encore) les transactions. Alors, tout simplement un grand nombre d'applications réseau ne peuvent pas tourner (p.ex. les nôtres).
Afin d'améliorer la vitesse d'ouverture de fenêtres sous WD8, il y a par exemple les solutions suivantes:
1) Eviter un grand nombre de combos et favoriser la technique du RAD avec fenêtre Vision Plus.
2) Si la fenêtre contient plusieurs tables et combos, alors à l'ouverture vider la source de données des objets dont on n'a pas besoin tout de suite et les remplir et réassigner lors du besoin.
3) Dans les requêtes, éviter au maximum des relations de fichiers, SURTOUT lorsque la requête risque de retourner bcp de lignes. Pour alimenter une table de commandes, il est p.ex. beaucoup plus rapide de ne sélectionner que les commandes par la requête et aller chercher les noms de clients / produits avec HLitRecherche... lors de l'affichage de la table (avec optimisation pour éviter des lectures répétitives) que de les obtenir en ajoutant Clients et Produits à la requête. Par contre, aucun problème d'inclure "une dizaine" de fichiers lorsqu'il n'y a que quelques lignes dans le résultat. La taille des fichiers source ne ralenti pas outre mesure.
4) Savoir que chaque ligne de résultat de la requête est lu en mémoire et que cela ralenti le reste du programme si cette lecture n'est pas possible en arrière plan. Des facteurs qui le rendent impossible: placement du curseur sur un enregistrement particulier du résultat, des tries de la requête, les totaux, etc. Ce ralentissement se fait noter déjà à partir de 100 à 200 enregistrements dans le résultat.
5) Plusieurs développeurs disent d'éviter les problèmes de lenteur en remplissant "manuellement" des tables et combos mémoire, et sans filtres, simplement en utilisant des clés adéquates et HLitRecherche...
6) Utiliser des serveurs Linux avec Samba. Il parait que le partage se passe mieux.
7) Utiliser des bases de données indépendants tels que mySQL.
Salutations Mat
FabSteg wrote:
Bonjour,
J'ai actuellement de gros problème de lenteur dans mon logiciel !
J'utilise une base de données Hyperfile sur un serveur Windows 2000
Server avec un logiciel développé en Windev 8, mon problème est donc
que si j'utilise mon logiciel en local sur ce serveur, j'obtiens, par
exemple pour un traitement, un temps d'attente de 3 secondes,
maintenant en utilisant le même programme et le même traitement sur
les mêmes fichiers mais cette fois par le réseau sur un poste Client
(XP Pro SP1), j'obtiens un temps d'attente de 40 secondes, soit plus
de 13 fois plus lent, je vous laisse imaginer le temp que pourrais
durer l'éxécution de l'un de mes modules qui noralement est de 35 -
40 minutes ! Je ne vois pas comment je peut faire sachant que mon
code ne devrais pas être en cause !
Bonjour,
Si ce ralentissement se produit déjà à partir d'un seul accès en réseau
et le code n'est pas en cause c'est certainement un problème externe à
Windev. Si, par contre, la lenteur se produit lors des accès par
plusieurs utilisateurs, alors c'est probablement autre chose. Le code
est peut-être quand-même en cause puisque Windev a des particularités,
notamment concernant l'accès aux données sur fichiers partagés, que nous
n'avons vu avec aucun autre produit avec base intégrée que nous
utilisons (Access, Paradox et Visual Foxpro).
Les requêtes sont particulièrement touchées et malheureusement PC Soft
n'ont jamais informé leurs clients comment elles fonctionnent. En effet,
des sources d'information indépendantes disent qu'il y a deux systèmes:
1) fichiers partagés: les fichiers sont envoyé au poste requérant et
la requête est traitée localement.
2) Client/Serveur: le serveur exécute la requête et envoie le résultat
au poste requérant.
Or, selon notre expérience et celle d'autres utilisateurs Windev, il
faut penser que les requêtes Windev sont plutôt un genre de filtre sur
les données du serveur. De toute façon, la méthode d'accès choisi
ralenti l'accès pour tout le monde dans le réseau. Selon PC Soft (FAQ
2861) la responsabilité pour ces lenteurs est la faute de Windows et des
développeurs qui font du mauvais code. Sachant que ces problèmes de
lenteurs n'existent pas avec des produits comme Paradox, Visual Foxpro
et Access, il faut taxer cette information comme étant fausse.
Un fil sur cette question:
http://groups-beta.google.com/group/fr.comp.developpement.agl.windev/browse_thread/thread/c7f5c82a724d04a6/986523bf3537d6f3?q=[WD+7.5+%2F+8.0]+Requ%C3%AAtes+sur+Hyperfile+et+lenteurs+r%C3%A9seau+&_done=%2Fgroup%2Ffr.comp.developpement.agl.windev%2Fsearch%3Fgroup%3Dfr.comp.developpement.agl.windev%26q%3D[WD+7.5+%2F+8.0]+Requ%C3%AAtes+sur+Hyperfile+et+lenteurs+r%C3%A9seau+%26qt_g%3D1%26searchnow%3DSearch+this+group%26&_doneTitleºck+to+Search&&d#986523bf3537d6f3
Toujours selon PC Soft, le problème disparait avec HF Client/Serveur.
Seulement, selon des infos qu'on trouve, HF C/S ne supporte pas (encore)
les transactions. Alors, tout simplement un grand nombre d'applications
réseau ne peuvent pas tourner (p.ex. les nôtres).
Afin d'améliorer la vitesse d'ouverture de fenêtres sous WD8,
il y a par exemple les solutions suivantes:
1) Eviter un grand nombre de combos et favoriser la technique du RAD
avec fenêtre Vision Plus.
2) Si la fenêtre contient plusieurs tables et combos, alors à
l'ouverture vider la source de données des objets dont on n'a pas besoin
tout de suite et les remplir et réassigner lors du besoin.
3) Dans les requêtes, éviter au maximum des relations de fichiers,
SURTOUT lorsque la requête risque de retourner bcp de lignes. Pour
alimenter une table de commandes, il est p.ex. beaucoup plus rapide de
ne sélectionner que les commandes par la requête et aller chercher les
noms de clients / produits avec HLitRecherche... lors de l'affichage de
la table (avec optimisation pour éviter des lectures répétitives) que de
les obtenir en ajoutant Clients et Produits à la requête. Par contre,
aucun problème d'inclure "une dizaine" de fichiers lorsqu'il n'y a que
quelques lignes dans le résultat. La taille des fichiers source ne
ralenti pas outre mesure.
4) Savoir que chaque ligne de résultat de la requête est lu en mémoire
et que cela ralenti le reste du programme si cette lecture n'est pas
possible en arrière plan. Des facteurs qui le rendent impossible:
placement du curseur sur un enregistrement particulier du résultat, des
tries de la requête, les totaux, etc.
Ce ralentissement se fait noter déjà à partir de 100 à 200
enregistrements dans le résultat.
5) Plusieurs développeurs disent d'éviter les problèmes de lenteur en
remplissant "manuellement" des tables et combos mémoire, et sans
filtres, simplement en utilisant des clés adéquates et HLitRecherche...
6) Utiliser des serveurs Linux avec Samba. Il parait que le partage se
passe mieux.
7) Utiliser des bases de données indépendants tels que mySQL.
J'ai actuellement de gros problème de lenteur dans mon logiciel ! J'utilise une base de données Hyperfile sur un serveur Windows 2000 Server avec un logiciel développé en Windev 8, mon problème est donc que si j'utilise mon logiciel en local sur ce serveur, j'obtiens, par exemple pour un traitement, un temps d'attente de 3 secondes, maintenant en utilisant le même programme et le même traitement sur les mêmes fichiers mais cette fois par le réseau sur un poste Client (XP Pro SP1), j'obtiens un temps d'attente de 40 secondes, soit plus de 13 fois plus lent, je vous laisse imaginer le temp que pourrais durer l'éxécution de l'un de mes modules qui noralement est de 35 - 40 minutes ! Je ne vois pas comment je peut faire sachant que mon code ne devrais pas être en cause !
Bonjour,
Si ce ralentissement se produit déjà à partir d'un seul accès en réseau et le code n'est pas en cause c'est certainement un problème externe à Windev. Si, par contre, la lenteur se produit lors des accès par plusieurs utilisateurs, alors c'est probablement autre chose. Le code est peut-être quand-même en cause puisque Windev a des particularités, notamment concernant l'accès aux données sur fichiers partagés, que nous n'avons vu avec aucun autre produit avec base intégrée que nous utilisons (Access, Paradox et Visual Foxpro).
Les requêtes sont particulièrement touchées et malheureusement PC Soft n'ont jamais informé leurs clients comment elles fonctionnent. En effet, des sources d'information indépendantes disent qu'il y a deux systèmes:
1) fichiers partagés: les fichiers sont envoyé au poste requérant et la requête est traitée localement. 2) Client/Serveur: le serveur exécute la requête et envoie le résultat au poste requérant.
Or, selon notre expérience et celle d'autres utilisateurs Windev, il faut penser que les requêtes Windev sont plutôt un genre de filtre sur les données du serveur. De toute façon, la méthode d'accès choisi ralenti l'accès pour tout le monde dans le réseau. Selon PC Soft (FAQ 2861) la responsabilité pour ces lenteurs est la faute de Windows et des développeurs qui font du mauvais code. Sachant que ces problèmes de lenteurs n'existent pas avec des produits comme Paradox, Visual Foxpro et Access, il faut taxer cette information comme étant fausse.
Un fil sur cette question: http://groups-beta.google.com/group/fr.comp.developpement.agl.windev/browse_thread/thread/c7f5c82a724d04a6/986523bf3537d6f3?q=[WD+7.5+%2F+8.0]+Requ%C3%AAtes+sur+Hyperfile+et+lenteurs+r%C3%A9seau+&_done=%2Fgroup%2Ffr.comp.developpement.agl.windev%2Fsearch%3Fgroup%3Dfr.comp.developpement.agl.windev%26q%3D[WD+7.5+%2F+8.0]+Requ%C3%AAtes+sur+Hyperfile+et+lenteurs+r%C3%A9seau+%26qt_g%3D1%26searchnow%3DSearch+this+group%26&_doneTitleºck+to+Search&&d#986523bf3537d6f3
Toujours selon PC Soft, le problème disparait avec HF Client/Serveur. Seulement, selon des infos qu'on trouve, HF C/S ne supporte pas (encore) les transactions. Alors, tout simplement un grand nombre d'applications réseau ne peuvent pas tourner (p.ex. les nôtres).
Afin d'améliorer la vitesse d'ouverture de fenêtres sous WD8, il y a par exemple les solutions suivantes:
1) Eviter un grand nombre de combos et favoriser la technique du RAD avec fenêtre Vision Plus.
2) Si la fenêtre contient plusieurs tables et combos, alors à l'ouverture vider la source de données des objets dont on n'a pas besoin tout de suite et les remplir et réassigner lors du besoin.
3) Dans les requêtes, éviter au maximum des relations de fichiers, SURTOUT lorsque la requête risque de retourner bcp de lignes. Pour alimenter une table de commandes, il est p.ex. beaucoup plus rapide de ne sélectionner que les commandes par la requête et aller chercher les noms de clients / produits avec HLitRecherche... lors de l'affichage de la table (avec optimisation pour éviter des lectures répétitives) que de les obtenir en ajoutant Clients et Produits à la requête. Par contre, aucun problème d'inclure "une dizaine" de fichiers lorsqu'il n'y a que quelques lignes dans le résultat. La taille des fichiers source ne ralenti pas outre mesure.
4) Savoir que chaque ligne de résultat de la requête est lu en mémoire et que cela ralenti le reste du programme si cette lecture n'est pas possible en arrière plan. Des facteurs qui le rendent impossible: placement du curseur sur un enregistrement particulier du résultat, des tries de la requête, les totaux, etc. Ce ralentissement se fait noter déjà à partir de 100 à 200 enregistrements dans le résultat.
5) Plusieurs développeurs disent d'éviter les problèmes de lenteur en remplissant "manuellement" des tables et combos mémoire, et sans filtres, simplement en utilisant des clés adéquates et HLitRecherche...
6) Utiliser des serveurs Linux avec Samba. Il parait que le partage se passe mieux.
7) Utiliser des bases de données indépendants tels que mySQL.
Salutations Mat
Bruno
Attention si ton poste serveur est un PC sous XP tes lenteurs sont normales (un Serveur 2003 serait mieux). Il faut essayer d'enlever l'indexation auto des dossiers et enlever la négociation AUTO des cartes réseaux + switch et les passer toutes dans le m^me mode (100 full duplex par ex).
Bruno
FabSteg a écrit :
Bonjour,
J'ai actuellement de gros problème de lenteur dans mon logiciel ! J'utilise une base de données Hyperfile sur un serveur Windows 2000 Server avec un logiciel développé en Windev 8, mon problème est donc que si j'utilise mon logiciel en local sur ce serveur, j'obtiens, par exemple pour un traitement, un temps d'attente de 3 secondes, maintenant en utilisant le même programme et le même traitement sur les mêmes fichiers mais cette fois par le réseau sur un poste Client (XP Pro SP1), j'obtiens un temps d'attente de 40 secondes, soit plus de 13 fois plus lent, je vous laisse imaginer le temp que pourrais durer l'éxécution de l'un de mes modules qui noralement est de 35 - 40 minutes ! Je ne vois pas comment je peut faire sachant que mon code ne devrais pas être en cause !
Merci beaucoup !
FabSteg
Attention si ton poste serveur est un PC sous XP tes lenteurs sont
normales (un Serveur 2003 serait mieux). Il faut essayer d'enlever
l'indexation auto des dossiers et enlever la négociation AUTO des cartes
réseaux + switch et les passer toutes dans le m^me mode (100 full
duplex par ex).
Bruno
FabSteg a écrit :
Bonjour,
J'ai actuellement de gros problème de lenteur dans mon logiciel !
J'utilise une base de données Hyperfile sur un serveur Windows 2000
Server avec un logiciel développé en Windev 8, mon problème est donc que
si j'utilise mon logiciel en local sur ce serveur, j'obtiens, par
exemple pour un traitement, un temps d'attente de 3 secondes, maintenant
en utilisant le même programme et le même traitement sur les mêmes
fichiers mais cette fois par le réseau sur un poste Client (XP Pro SP1),
j'obtiens un temps d'attente de 40 secondes, soit plus de 13 fois plus
lent, je vous laisse imaginer le temp que pourrais durer l'éxécution de
l'un de mes modules qui noralement est de 35 - 40 minutes !
Je ne vois pas comment je peut faire sachant que mon code ne devrais pas
être en cause !
Attention si ton poste serveur est un PC sous XP tes lenteurs sont normales (un Serveur 2003 serait mieux). Il faut essayer d'enlever l'indexation auto des dossiers et enlever la négociation AUTO des cartes réseaux + switch et les passer toutes dans le m^me mode (100 full duplex par ex).
Bruno
FabSteg a écrit :
Bonjour,
J'ai actuellement de gros problème de lenteur dans mon logiciel ! J'utilise une base de données Hyperfile sur un serveur Windows 2000 Server avec un logiciel développé en Windev 8, mon problème est donc que si j'utilise mon logiciel en local sur ce serveur, j'obtiens, par exemple pour un traitement, un temps d'attente de 3 secondes, maintenant en utilisant le même programme et le même traitement sur les mêmes fichiers mais cette fois par le réseau sur un poste Client (XP Pro SP1), j'obtiens un temps d'attente de 40 secondes, soit plus de 13 fois plus lent, je vous laisse imaginer le temp que pourrais durer l'éxécution de l'un de mes modules qui noralement est de 35 - 40 minutes ! Je ne vois pas comment je peut faire sachant que mon code ne devrais pas être en cause !
Merci beaucoup !
FabSteg
FabSteg
Bruno a écrit :
Attention si ton poste serveur est un PC sous XP tes lenteurs sont normales (un Serveur 2003 serait mieux). Il faut essayer d'enlever l'indexation auto des dossiers et enlever la négociation AUTO des cartes réseaux + switch et les passer toutes dans le m^me mode (100 full duplex par ex).
et non mon serveur est sous Windows 2000 Serveur et pas sous XP, ce sont mes postes clients qui sont sous Windows XP Pro.
Merci quand même
FabSteg
Bruno a écrit :
Attention si ton poste serveur est un PC sous XP tes lenteurs sont
normales (un Serveur 2003 serait mieux). Il faut essayer d'enlever
l'indexation auto des dossiers et enlever la négociation AUTO des cartes
réseaux + switch et les passer toutes dans le m^me mode (100 full
duplex par ex).
et non mon serveur est sous Windows 2000 Serveur et pas sous XP, ce sont
mes postes clients qui sont sous Windows XP Pro.
Attention si ton poste serveur est un PC sous XP tes lenteurs sont normales (un Serveur 2003 serait mieux). Il faut essayer d'enlever l'indexation auto des dossiers et enlever la négociation AUTO des cartes réseaux + switch et les passer toutes dans le m^me mode (100 full duplex par ex).
et non mon serveur est sous Windows 2000 Serveur et pas sous XP, ce sont mes postes clients qui sont sous Windows XP Pro.
Merci quand même
FabSteg
Bruno
FabSteg a écrit :
Bruno a écrit :
Attention si ton poste serveur est un PC sous XP tes lenteurs sont normales (un Serveur 2003 serait mieux). Il faut essayer d'enlever l'indexation auto des dossiers et enlever la négociation AUTO des cartes réseaux + switch et les passer toutes dans le m^me mode (100 full duplex par ex).
et non mon serveur est sous Windows 2000 Serveur et pas sous XP, ce sont mes postes clients qui sont sous Windows XP Pro.
Merci quand même
FabSteg
penses qd même à la négociation des cartes (c'est le jour et la nuit sans le mode auto)
bruno
FabSteg a écrit :
Bruno a écrit :
Attention si ton poste serveur est un PC sous XP tes lenteurs sont
normales (un Serveur 2003 serait mieux). Il faut essayer d'enlever
l'indexation auto des dossiers et enlever la négociation AUTO des
cartes réseaux + switch et les passer toutes dans le m^me mode (100
full duplex par ex).
et non mon serveur est sous Windows 2000 Serveur et pas sous XP, ce sont
mes postes clients qui sont sous Windows XP Pro.
Merci quand même
FabSteg
penses qd même à la négociation des cartes (c'est le jour et la nuit
sans le mode auto)
Attention si ton poste serveur est un PC sous XP tes lenteurs sont normales (un Serveur 2003 serait mieux). Il faut essayer d'enlever l'indexation auto des dossiers et enlever la négociation AUTO des cartes réseaux + switch et les passer toutes dans le m^me mode (100 full duplex par ex).
et non mon serveur est sous Windows 2000 Serveur et pas sous XP, ce sont mes postes clients qui sont sous Windows XP Pro.
Merci quand même
FabSteg
penses qd même à la négociation des cartes (c'est le jour et la nuit sans le mode auto)