J'exécute une application Python multithread avec plusieurs processus qui extrait des données de certains sites Web. Elle fonctionne très bien sur mon serveur local, mais sur le serveur virtuel que j'utilise (Centos 5.8, 2.6 GHZ avec 4 cœurs), elle est très lente.
Avec la commande nethogs, j'obtiens une utilisation du réseau trop faible. J'obtiens environ 8KBps avec 15 threads. Par contre, sur mon PC, l'utilisation est d'environ 100-120KBPS.
J'ai lu des articles sur les limitations de la GIL Python et du threading. Il semble que la GIL ne libère jamais le verrou sur le VPS alors qu'elle devrait le faire lors d'un I/0.
Y a-t-il une configuration dans le VPS que je dois changer pour que le threading fonctionne correctement ?
UPDATE : En fait, le multithreading fonctionne mais c'est le processeur qui causait le problème. 15 Threads étaient trop nombreux pour lui et il devenait trop occupé avec le changement de thread. Bien que le serveur virtuel prétende qu'il s'agit d'un processeur 2.6 GHZ, je pense que ce n'est pas le cas. Y a-t-il un moyen de mesurer la vitesse réelle du processeur dans le VPS ?