La version 3.0 du quizz est disponible, venez tester :)

Diminuer le temps de préparation d'une partie de quizz

Avatar de l’utilisateur

Auteur du sujet
Odin
Robot de quizz
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

Message non lu par Odin »

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.
J'adore poser des questions aux gens 😎
Avatar de l’utilisateur

Tecsomane
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

Message non lu par Tecsomane »

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 ?
"On a toujours le choix. Toujours. Il suffit de faire le bon. "
Pierre BOTTERO
Avatar de l’utilisateur

Jocelyn
Habitué
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

Message non lu par Jocelyn »

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...
N'oubliez pas de lire l'aide du quizz avant de poser une question - Aide du forum :icon14:
Avatar de l’utilisateur

Auteur du sujet
Odin
Robot de quizz
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

Message non lu par Odin »

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.
J'adore poser des questions aux gens 😎
Avatar de l’utilisateur

Jocelyn
Habitué
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

Message non lu par Jocelyn »

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.
N'oubliez pas de lire l'aide du quizz avant de poser une question - Aide du forum :icon14:
Verrouillé