J'ai maintenant une liaison ADSL "rapide" ; or, je me rend compte que mes
scripts FTP, écrits en Python, rament lamentablement.
J'ai comparé à FileZilla, et à Dreamweaver (et son FTP intégré). Pour
envoyer une cinquantaine de petits fichiers (entre 1 et 10 ko), cela prend 8
fois plus de temps avec Python.
Pourtant, le script ne fait que :
- se connecter
- envoyer les fichiers, l'un après l'autre, avec storbinary("STOR
- fermer la connexion.
Résolu, en définissant d'autres droit à l'utilisateur, sur le serveur FTP. Je suis, maintenant, simplement 10% à 15% plus lent.
MCI
Do Re Mi chel La Si Do
Re
Et j'obtiens une vitesse quasi équivalente, en "multi-threadant" l'envoi. Il m'a suffit de gérer 4 threads, avec 4 connexions simultanées (sur le même serveur), qui envoient les fichiers placés dans une liste "Queue", pour que le tour soit joué.
@-salutations
Michel Claveau
Re
Et j'obtiens une vitesse quasi équivalente, en "multi-threadant" l'envoi.
Il m'a suffit de gérer 4 threads, avec 4 connexions simultanées (sur le même
serveur), qui envoient les fichiers placés dans une liste "Queue", pour que
le tour soit joué.
Et j'obtiens une vitesse quasi équivalente, en "multi-threadant" l'envoi. Il m'a suffit de gérer 4 threads, avec 4 connexions simultanées (sur le même serveur), qui envoient les fichiers placés dans une liste "Queue", pour que le tour soit joué.
@-salutations
Michel Claveau
Sébastien Kirche
Le 3 septembre 2005 à 08:09, Do Re Mi chel La Si Do vraute :
Et j'obtiens une vitesse quasi équivalente, en "multi-threadant" l'envoi. Il m'a suffit de gérer 4 threads, avec 4 connexions simultanées (sur le même serveur), qui envoient les fichiers placés dans une liste "Queue", pour que le tour soit joué.
T'aurais moyen de mettre ce genre de code à dispo ? ou d'en publier une partie ?
J'avais commencé un programme il y a un moment ou j'ai besoin d'envoyer N requêtes à des serveurs différents et je me disais que le multithread était peut-être la solution. En effet si je dois faire mes requêtes en file et attendre à chaque fois la réponse je ne suis pas couché sachant que des serveurs peuvent ne pas répondre.
C'est pas pour du ftp mais de l'udp. Cependant ça devrait fonctionner pareil du point de vue des threads.
En fait c'est pour faire des recherches sur des parties de jeux type Enemy Territory, Unreal, etc : - un requête udp sur un serveur "maître" retourne une liste de serveurs avec des parties en cours (typiquement dans les 2000 serveurs) - une requête udp sur chaque serveur retourne (peut-être) les caractéristiques de la partie (nom, type, durée, etc) et des participants
Avec les résultats, on peut par exemple trouver le serveur sur lequel joue un copain pour le rejoindre, ou rechercher une carte de jeu donnée.
-- Sébastien Kirche
Le 3 septembre 2005 à 08:09, Do Re Mi chel La Si Do vraute :
Et j'obtiens une vitesse quasi équivalente, en "multi-threadant"
l'envoi. Il m'a suffit de gérer 4 threads, avec 4 connexions
simultanées (sur le même serveur), qui envoient les fichiers placés
dans une liste "Queue", pour que le tour soit joué.
T'aurais moyen de mettre ce genre de code à dispo ? ou d'en publier une
partie ?
J'avais commencé un programme il y a un moment ou j'ai besoin d'envoyer
N requêtes à des serveurs différents et je me disais que le multithread
était peut-être la solution. En effet si je dois faire mes requêtes en
file et attendre à chaque fois la réponse je ne suis pas couché sachant
que des serveurs peuvent ne pas répondre.
C'est pas pour du ftp mais de l'udp. Cependant ça devrait fonctionner
pareil du point de vue des threads.
En fait c'est pour faire des recherches sur des parties de jeux type
Enemy Territory, Unreal, etc :
- un requête udp sur un serveur "maître" retourne une liste de serveurs
avec des parties en cours (typiquement dans les 2000 serveurs)
- une requête udp sur chaque serveur retourne (peut-être) les
caractéristiques de la partie (nom, type, durée, etc) et des
participants
Avec les résultats, on peut par exemple trouver le serveur sur lequel
joue un copain pour le rejoindre, ou rechercher une carte de jeu donnée.
Le 3 septembre 2005 à 08:09, Do Re Mi chel La Si Do vraute :
Et j'obtiens une vitesse quasi équivalente, en "multi-threadant" l'envoi. Il m'a suffit de gérer 4 threads, avec 4 connexions simultanées (sur le même serveur), qui envoient les fichiers placés dans une liste "Queue", pour que le tour soit joué.
T'aurais moyen de mettre ce genre de code à dispo ? ou d'en publier une partie ?
J'avais commencé un programme il y a un moment ou j'ai besoin d'envoyer N requêtes à des serveurs différents et je me disais que le multithread était peut-être la solution. En effet si je dois faire mes requêtes en file et attendre à chaque fois la réponse je ne suis pas couché sachant que des serveurs peuvent ne pas répondre.
C'est pas pour du ftp mais de l'udp. Cependant ça devrait fonctionner pareil du point de vue des threads.
En fait c'est pour faire des recherches sur des parties de jeux type Enemy Territory, Unreal, etc : - un requête udp sur un serveur "maître" retourne une liste de serveurs avec des parties en cours (typiquement dans les 2000 serveurs) - une requête udp sur chaque serveur retourne (peut-être) les caractéristiques de la partie (nom, type, durée, etc) et des participants
Avec les résultats, on peut par exemple trouver le serveur sur lequel joue un copain pour le rejoindre, ou rechercher une carte de jeu donnée.