Session et base de donné
#1
Bonjour.

Je pose ici cette question toute simple, car je n'ai pas trouvé de réponses satisfaisantes ailleurs.
Pour créer un jeu web aujourd'hui, ai-je intérêt à utilisé un stockage des sessions dans une base de donnés ou puis-je me contenter des commandes basiques?

Merci de votre attention.
Répondre
#2
Salut,

il y a déjà plusieurs topics là-dessus je crois?

Sinon, pour ma part, ce genre de question me laisse penser que le rôle de la session n'est pas nécessairement compris. Pour ma part, la session n'a qu'un seul but: permettre de savoir qui est le client du serveur (l'authentifier). A cette fin, on y trouvera donc un SESSID (partagé avec le client et géré tout seul par PHP par exemple) et un ACCOUNTID (ou "id du joueur dans ma base de données"). La session ne sert donc qu'à faire le lien entre ce SESSID et l'ID du joueur.

(Dans la pratique, je stocke aussi le pseudo et l'email du joueur connecté)

Qu'est-ce que tu appelles "commandes basiques"? Et un "stockage des sessions dans une BDD"? Parce que oui, en fait, j'ai peut-être mal compris la question: tu peux stocker la session en BDD (plutôt que sur disque ou sur "la méthode par défaut de mon hébergeur"), mais l'intérêt est souvent nul...
Répondre
#3
Ah, désolé si j'ai fait une redite.

La question est bien: est-il mieux de stocker les sessions sur une BDD ou d'utiliser la méthode par défaut.

les topics sur le sujet parlais plus de la méthode que des avantages ou inconvénients.
Répondre
#4
Si on ne parle que de stockage, sans changement de mécanique, alors je ne vois pas ce qu'altérer la méthode par défaut t'apportera. Cette méthode par défaut ayant déjà énormément d'avantages:
• Pas besoin de code en plus, t'as déjà assez à faire avec un jeu (et tu risques de mal l'implémenter, c'est à dire de manière non-safe [quid d'une injection SQL permettant de lire la BDD? je pourrai probablement voler la session] ou peu performante [garbage collection des sessions])
• Si t'es en mutualisé, genre OVH, c'est ton hébergeur qui gère les perfs du bouzin, et s'il est plus intéressant de stocker en BDD plutôt que sur disque alors il le fera sans que tu ne t'en occupes
• Si les sessions sont stockées sur disque, alors tu t'épargnes l'ajout d'un autre composant informatique (la BDD); or, plus tu ajoutes de composants, plus le risque de plantage du jeu est élevé (car il suffit que l'un plante pour que tout plante, ie: stocké sur disque, les sessions ne plantent que si le serveur est planté alors que stocké sur BDD, les sessions planteront si le serveur plante OU si la BDD est plantée/inaccessible)

Donc, aucun avantage réel à faire ce genre de stockage.
Répondre
#5
D'accord, merci pour ton aide.
ça m’enlève une épine du pied, j'était un peut perdu face à la forêt de ligne de code à employer pour mettre en place ce genre de chose.
Répondre


Sujets apparemment similaires...
Sujet Auteur Réponses Affichages Dernier message
  Exécuter un script à un moment donné Faust 12 3 907 08-28-2006, 09:15 PM
Dernier message: Ssin



Utilisateur(s) parcourant ce sujet : 1 visiteur(s)