09-08-2007, 08:37 PM
C'est dommage d'avoir fermé le jeu!
Je pense personellement que le problème vient du code.
Je suppose que les mises à jour sont faites dans une boucle, qui ajoute les ressources à chaque joueur 1 par 1 avec un petit paquet de tests!!!
Et souvent, ce genre de fonctionnalités peut être réduit à une seul requête (certes parfois complexe :p) qui fera tout d'un seul coup avec les bons calculs requis, et bien plus rapidement que par le biais de code php qui doit initialiser la connexion au SGBD, envoyer la requête "simple", attendre son code de retour, clore la connexion, incrémenter l'id_user et recommencer... (si si, il y a une initialisation et une cloture pour chaque requête SQL en plus que l'ouverture et de la fermeture de l'intance du SGBD!!! et celles-ci prennent également du temps pour prévoir une page de mémoire, la remplir avec les résultats, puis la vider!). Je manipule des bases de données relativement grandes (5000 étudiants à croiser avec 1200 enseignants, 800 cursus et 2000 cours, et mes mises à jours ne prennent pas plus d'une ou deux secondes lorsqu'une modification est faite dans l'une ou l'autre de ces tables! (Bon d'accord, c'est un BiXeon 3GHz avec 2GoRAM, mais les requêtes sont optimisées )
Postes nous donc le code de ce qui est fait à cette mise à jour!
Je pense personellement que le problème vient du code.
Je suppose que les mises à jour sont faites dans une boucle, qui ajoute les ressources à chaque joueur 1 par 1 avec un petit paquet de tests!!!
Et souvent, ce genre de fonctionnalités peut être réduit à une seul requête (certes parfois complexe :p) qui fera tout d'un seul coup avec les bons calculs requis, et bien plus rapidement que par le biais de code php qui doit initialiser la connexion au SGBD, envoyer la requête "simple", attendre son code de retour, clore la connexion, incrémenter l'id_user et recommencer... (si si, il y a une initialisation et une cloture pour chaque requête SQL en plus que l'ouverture et de la fermeture de l'intance du SGBD!!! et celles-ci prennent également du temps pour prévoir une page de mémoire, la remplir avec les résultats, puis la vider!). Je manipule des bases de données relativement grandes (5000 étudiants à croiser avec 1200 enseignants, 800 cursus et 2000 cours, et mes mises à jours ne prennent pas plus d'une ou deux secondes lorsqu'une modification est faite dans l'une ou l'autre de ces tables! (Bon d'accord, c'est un BiXeon 3GHz avec 2GoRAM, mais les requêtes sont optimisées )
Postes nous donc le code de ce qui est fait à cette mise à jour!