24-02-2011, 07:54 PM
24-02-2011, 08:27 PM
Sous quelle condition se déroule ton algorithme, chargement de page par un utilisateur ?
24-02-2011, 08:42 PM
(Modification du message : 24-02-2011, 08:42 PM par php_addict.)
24-02-2011, 10:18 PM
Donc, avec ton système, en stockant de nouvelles actions dans un array, il est possible que tu dupliques les actions si deux joueurs ayant rapport l'un avec l'autre appellent une page au même moment !
Peut-être restocker en base de données au lieu de mettre dans un array ? Mais là encore, je suppose que tu ne supprimes l'action dans la base (ou la marque en résolue) que quand elle à été résolue, donc même sans une histoire d'array il est possible que deux joueurs bossent sur la même action. Donc je vois pas trop ...
24-02-2011, 10:50 PM
(24-02-2011, 10:18 PM)niahoo a écrit : Donc, avec ton système, en stockant de nouvelles actions dans un array, il est possible que tu dupliques les actions si deux joueurs ayant rapport l'un avec l'autre appellent une page au même moment ! non impossible car la résolution des actions est dans une transaction avec' flag= resolu', voir cette discussion : http://www.jeuweb.org/showthread.php?tid=6246 tu penses bien que j'y ai déjà pensé
24-02-2011, 11:02 PM
Peut être n'ais je pas tout compris mais:
tu te moques de résoudre les actions du joueur y qui ne concernent pas un joueur x qui est en train de jouer ! non ? Tant que le joueur n'est pas connecté ou qu'un autre n'a aucune interaction avec lui, tu n'as pas besoin de résoudre l'action ! Enfin ma réponse me parait simple donc je n'ai pas du tout comprendre ! :p
24-02-2011, 11:17 PM
(24-02-2011, 11:02 PM)zneman a écrit : Tant que le joueur n'est pas connecté ou qu'un autre n'a aucune interaction avec lui, tu n'as pas besoin de résoudre l'action ! cela n'a rien à voir avec le problème du 1er post...et pourquoi un autre joueur ne serait pas la cause de la résolution d'actions révolues qui ne le concernent pas, un jour ou l'autre il faudra bien les résoudre...autant le faire dès que possible... bref, cela ne me fait pas avancer le schmilblick, je vais voir du côté de la récursivité peut être est ce là la clef...
25-02-2011, 09:48 AM
La récursivité c'est évident, mais fais gaffe php n'est pas optimisé pour ça il me semble (enfin y a de quoi faire).
Mais puisque tu utilises une transaction, est-il possible, au lieu d'utiliser un array, de mettre les nouvelles actions dans la pile en base de données plutot ? Car comme ça si un autre joueur appelle une page, il les résoudra, et sinon, quand ton script est fini, il recommence s'il reste des trucs en base de données. Enfin bon tout ça c'est long, utilises ajax pour pas avoir des chargements de page de 50 minutes ...
25-02-2011, 12:44 PM
N'y a t'il pas moyen de considérer "attaque" et "retour d'attaque" comme une seule action ? Est ce qu'une attaque engendre toujours un retour d'attaque ?
La majeure partie des problèmes vient du plug-in installé entre la chaise et le clavier.
25-02-2011, 02:43 PM
(25-02-2011, 09:48 AM)niahoo a écrit : Mais puisque tu utilises une transaction, est-il possible, au lieu d'utiliser un array, de mettre les nouvelles actions dans la pile en base de données plutot ? oui, mais ce qui me gêne dans la récursivité c'est la fonction récursive va à chaque fois qu'elle est lancée faire un SELECT, alors que si on réinjecte les actions générées par d'autres action dans un array() ca sera plus rapide car plus de SELECT inutile...enfin je crois... imaginons que sur 100 actions à résoudre cela engendre 30 nouvelles actions (retour d'attaque par ex), le nombre de SELECT est assez conséquent... (25-02-2011, 12:44 PM)Shidame a écrit : N'y a t'il pas moyen de considérer "attaque" et "retour d'attaque" comme une seule action ? Est ce qu'une attaque engendre toujours un retour d'attaque ? pas bête...mais pas évident à gérer |
|
Sujets apparemment similaires… | |||||
Sujet | Auteur | Réponses | Affichages | Dernier message | |
Actions en répétition Serverside | Theotime74 | 6 | 3 296 |
25-04-2017, 11:13 AM Dernier message: Theotime74 |
|
Logique des actions : comment les implémenter ? | rachids | 8 | 3 366 |
05-01-2016, 10:20 PM Dernier message: rachids |
|
Gestion d'actions datées | BillyMcFly | 4 | 2 351 |
22-08-2012, 10:00 PM Dernier message: Astarion |
|
Gestion des actions | ThErOr | 7 | 3 840 |
08-03-2011, 07:03 PM Dernier message: ThErOr |
|
Actions autour des SESSION | Argorate | 17 | 6 649 |
16-03-2010, 07:00 PM Dernier message: Anthor |