11-02-2008, 12:35 PM
Modifier les variables de session n'a a mon sens pas véritablement de défaut (excepté le risque toujours présent de vol de session).
Par contre, il a des limitations.
Cela ne sert que pour enregistrer des informations volatiles qui ne dureront que le temps de la session. Ces informations volatiles peuvent au cas échéant devoir être sauvegardées en base de données.
Dans le cas d'une shoutbox d'alliance, à chaque message envoyé, on peut faire le tour des membres de l'alliance pour modifier leurs variables de session puis les notifier de l'arrivée d'un nouveau message. Pas besoin de sauvegarder les informations ailleurs. Si un joueur se déconnecte et se reconnecte plus tard, il n'a besoin d'aucune notification.
Dans le cas d'un message privé, c'est différent. On peut mettre à jour la variable de session pour notifier de l'arrivée d'un message, mais on doit aussi enregistrer cette information en BDD. A supposer que le joueur soit en ligne au moment de la réception du message mais qu'il ferme son navigateur sans aller le lire (et donc perde ses informations de session), il doit être prévenu de la présence d'un message en attente à sa prochaine connection.
Le degré de cohérence nécessaire varie en fonction de ce que l'on veut réaliser.
Par contre, il a des limitations.
Cela ne sert que pour enregistrer des informations volatiles qui ne dureront que le temps de la session. Ces informations volatiles peuvent au cas échéant devoir être sauvegardées en base de données.
Dans le cas d'une shoutbox d'alliance, à chaque message envoyé, on peut faire le tour des membres de l'alliance pour modifier leurs variables de session puis les notifier de l'arrivée d'un nouveau message. Pas besoin de sauvegarder les informations ailleurs. Si un joueur se déconnecte et se reconnecte plus tard, il n'a besoin d'aucune notification.
Dans le cas d'un message privé, c'est différent. On peut mettre à jour la variable de session pour notifier de l'arrivée d'un message, mais on doit aussi enregistrer cette information en BDD. A supposer que le joueur soit en ligne au moment de la réception du message mais qu'il ferme son navigateur sans aller le lire (et donc perde ses informations de session), il doit être prévenu de la présence d'un message en attente à sa prochaine connection.
Le degré de cohérence nécessaire varie en fonction de ce que l'on veut réaliser.
Quand on te dit qu'un projet est terminé à 90%, prépare toi pour les 90% suivant
Ninety-Ninety Rule
"Une guerre de religions, c'est quand deux peuples s'entretuent pour savoir qui a le meilleur ami imaginaire"
Vu sur IRC
Ninety-Ninety Rule
"Une guerre de religions, c'est quand deux peuples s'entretuent pour savoir qui a le meilleur ami imaginaire"
Vu sur IRC