Jocelyn a ajouté la suggestion n°580 sur Mantis : Diminuer le temps de préparation d'une partie de quizz
Description : Le temps de préparation d'une partie de quizz est trop élevé.
Une fois les 15 secondes d'attente normale écoulées, le choix du mode, de la durée et du thème choisis est enregistré.
A partir de ce moment, le bot exécute des requêtes dans la base pour préparer la nouvelle partie.
Pour une partie de thème 15 lancée il y a quelques jours, le bot a exécuté 462 requêtes pour un temps total d'exécution de 14.7 secondes.
Il a donc fallu attendre à peu près 30 secondes entre la commande !quizz et le démarrage réel de la partie.
Il faudrait que la préparation d'une nouvelle partie prenne toujours moins de 5 secondes.
Vous pouvez commenter cette suggestion en postant un nouveau message dans cette discussion.
La version 3.0 du quizz est disponible, venez tester
Diminuer le temps de préparation d'une partie de quizz
-
Auteur du sujet - Robot de quizz
- Messages : 679
- Inscription : 22 nov. 2003, 12:31:15
- Messages depuis un an : 0
- Score aux Enigmes : 0
- Localisation : Sur les salons de quizz
- Contact :
Diminuer le temps de préparation d'une partie de quizz
J'adore poser des questions aux gens
-
- Spécialiste Énigmes et P&C
- Messages : 1399
- Inscription : 20 sept. 2003, 18:11:16
- Messages depuis un an : 0
- Score global au quizz : 27942
- Score aux Enigmes : 0
- Localisation : Tecsomane / 9, place du Forum / D7854 OdinCity
- Contact :
Re: Diminuer le temps de préparation d'une partie de quizz
Est-ce qu'il serait possible de pré-préparer les parties pour que chaque combinaison thème/mode/durée ait une partie de pré-préparée ?
Ou est-ce que tout doit être fait en temps réel ?
Ou est-ce que tout doit être fait en temps réel ?
"On a toujours le choix. Toujours. Il suffit de faire le bon. "
Pierre BOTTERO
Pierre BOTTERO
-
- Habitué
- Messages : 1343
- Inscription : 07 sept. 2003, 00:25:17
- Messages depuis un an : 3
- Score global au quizz : 153122
- Score aux Enigmes : 1703
- Localisation : Biot (France)
- Contact :
Re: Diminuer le temps de préparation d'une partie de quizz
Il y a un peu de tout :
- du ménage à faire (suppression dans la base d'enregistrements périmés : vieux historiques...)
- des recomptages (nombre de questions de chaque type dans chaque catégorie...)
- des choses à calculer ou actualiser (pourcentage de questions à piocher dans chaque catégorie du thème choisi...)
Dans toutes les requêtes exécutées pendant la préparation d'une partie :
- certaines sont inutiles (car la même chose est déjà faite, soit par le bot à un autre moment, soit par un automatisme dans la base)
- certaines sont nécessaires mais trop longues à l'exécution : il faut alors réécrire ces requêtes pour que l'exécution soit plus rapide
- certaines n'ont pas besoin d'être exécutées à chaque démarrage d'une partie : dans ce cas il faut les déplacer dans une autre partie du code, pour qu'elles soient exécutées quand ça ne cause pas d'attente
J'ai regardé la liste des 462 requêtes exécutées :
- 2 requêtes prenaient 5s + 0.25s : je les ai supprimées, ce qu'elle font est déjà fait en temps réel par 2 automatismes dans la base
- 1 autre requête prenait 2.65s : je l'ai modifiée, maintenant c'est presque immédiat
Avec ces 3 changements cela fait donc déjà gagner plus de 7 secondes sur les presque 15 secondes d'attente au démarrage.
Il y a sûrement d'autres optimisations possibles, je devrai regarder plus en détail.
462 requêtes, ça peut sembler beaucoup, mais finalement, dans tout ça il y a 377 requêtes dont le temps total d'exécution est de 0.352s. Il y a juste quelques requêtes dans le tas qui prennent un peu trop leur temps...
- du ménage à faire (suppression dans la base d'enregistrements périmés : vieux historiques...)
- des recomptages (nombre de questions de chaque type dans chaque catégorie...)
- des choses à calculer ou actualiser (pourcentage de questions à piocher dans chaque catégorie du thème choisi...)
Dans toutes les requêtes exécutées pendant la préparation d'une partie :
- certaines sont inutiles (car la même chose est déjà faite, soit par le bot à un autre moment, soit par un automatisme dans la base)
- certaines sont nécessaires mais trop longues à l'exécution : il faut alors réécrire ces requêtes pour que l'exécution soit plus rapide
- certaines n'ont pas besoin d'être exécutées à chaque démarrage d'une partie : dans ce cas il faut les déplacer dans une autre partie du code, pour qu'elles soient exécutées quand ça ne cause pas d'attente
J'ai regardé la liste des 462 requêtes exécutées :
- 2 requêtes prenaient 5s + 0.25s : je les ai supprimées, ce qu'elle font est déjà fait en temps réel par 2 automatismes dans la base
- 1 autre requête prenait 2.65s : je l'ai modifiée, maintenant c'est presque immédiat
Avec ces 3 changements cela fait donc déjà gagner plus de 7 secondes sur les presque 15 secondes d'attente au démarrage.
Il y a sûrement d'autres optimisations possibles, je devrai regarder plus en détail.
462 requêtes, ça peut sembler beaucoup, mais finalement, dans tout ça il y a 377 requêtes dont le temps total d'exécution est de 0.352s. Il y a juste quelques requêtes dans le tas qui prennent un peu trop leur temps...
N'oubliez pas de lire l'aide du quizz avant de poser une question - Aide du forum
-
Auteur du sujet - Robot de quizz
- Messages : 679
- Inscription : 22 nov. 2003, 12:31:15
- Messages depuis un an : 0
- Score aux Enigmes : 0
- Localisation : Sur les salons de quizz
- Contact :
Re: Diminuer le temps de préparation d'une partie de quizz
Cette suggestion a été programmée dans la version 3.0.0 du robot de quizz.
Pour toute suggestion ou demande supplémentaire, merci d'ouvrir une nouvelle discussion.
Pour toute suggestion ou demande supplémentaire, merci d'ouvrir une nouvelle discussion.
J'adore poser des questions aux gens
-
- Habitué
- Messages : 1343
- Inscription : 07 sept. 2003, 00:25:17
- Messages depuis un an : 3
- Score global au quizz : 153122
- Score aux Enigmes : 1703
- Localisation : Biot (France)
- Contact :
Re: Diminuer le temps de préparation d'une partie de quizz
J'ai modifié une autre requête :
- avant : à peu près 3.5 secondes d'exécution
- après modification : à peu près 0.0005s d'exécution (7000 fois plus rapide)
Avec les précédentes optimisations, ça fait donc un gain approximatif de 10.5 secondes dans la préparation d'une partie de quizz.
Le temps de préparation d'une partie de quizz devrait donc être à peu près 4.5 secondes.
J'ai fait les tests sur mon ordinateur, il faudra vérifier ce que ça donne sur les bots de Quizzz.net une fois la v3 installée.
- avant : à peu près 3.5 secondes d'exécution
- après modification : à peu près 0.0005s d'exécution (7000 fois plus rapide)
Avec les précédentes optimisations, ça fait donc un gain approximatif de 10.5 secondes dans la préparation d'une partie de quizz.
Le temps de préparation d'une partie de quizz devrait donc être à peu près 4.5 secondes.
J'ai fait les tests sur mon ordinateur, il faudra vérifier ce que ça donne sur les bots de Quizzz.net une fois la v3 installée.
N'oubliez pas de lire l'aide du quizz avant de poser une question - Aide du forum