Bonjour à tous
Lorsque je participais à la normalisation et à l'implémentation des protocoles de communication dans les années 1975-1985, la couche "session" était le point fondamental de toute communication entre un terminal (sans grande autonomie) et un ordinateur central, qui gérait lui même la base de données. Cette "couche session" était réalisée sous la forme d'une structure de données sur l'ordinateur central, similaire à ce qui existe sous la forme de $_SESSION sur les serveurs actuellement.
L'évolution des techniques a perturbé le modèle conceptuel de cette époque.
Pour autant que je comprenne, le concept de "session" est actuellement réparti entre :
- le navigateur du client sous la forme du "sessionStorage"
- le serveur sous la forme de "$_SESSION"
- le gestionnaire de base de données, sous la forme d'une connexion établie par le serveur sous la forme d'un objet PDO, le gestionnaire de base de données ayant lui même une structure similaire à $_SESSION lui permettant d'établir une continuité des échanges sur cette connexion.
De plus nous avons sur le serveur des objets PDOStatement qui représentent des objets similaires sur le gestionnaire de base de données -- du moins c'est ce que je crois comprendre à la lecture de la documentation.
Si on ne fait rien de particulier, à chaque interaction entre client et serveur nécessitant un appel à la base de données, il faut recréer un PDO et des PDOStatements qu'on avait créés dans des interactions précédentes.
Question: est-il possible (et judicieux) de mettre des objets PDO et PDOStatment dans $_SESSION sur le serveur, ce qui permettrait de réduire l'overhead généré par ce mécanisme ?
Merci de m'aider à clarifier mes idées sur ce sujet.
Lorsque je participais à la normalisation et à l'implémentation des protocoles de communication dans les années 1975-1985, la couche "session" était le point fondamental de toute communication entre un terminal (sans grande autonomie) et un ordinateur central, qui gérait lui même la base de données. Cette "couche session" était réalisée sous la forme d'une structure de données sur l'ordinateur central, similaire à ce qui existe sous la forme de $_SESSION sur les serveurs actuellement.
L'évolution des techniques a perturbé le modèle conceptuel de cette époque.
Pour autant que je comprenne, le concept de "session" est actuellement réparti entre :
- le navigateur du client sous la forme du "sessionStorage"
- le serveur sous la forme de "$_SESSION"
- le gestionnaire de base de données, sous la forme d'une connexion établie par le serveur sous la forme d'un objet PDO, le gestionnaire de base de données ayant lui même une structure similaire à $_SESSION lui permettant d'établir une continuité des échanges sur cette connexion.
De plus nous avons sur le serveur des objets PDOStatement qui représentent des objets similaires sur le gestionnaire de base de données -- du moins c'est ce que je crois comprendre à la lecture de la documentation.
Si on ne fait rien de particulier, à chaque interaction entre client et serveur nécessitant un appel à la base de données, il faut recréer un PDO et des PDOStatements qu'on avait créés dans des interactions précédentes.
Question: est-il possible (et judicieux) de mettre des objets PDO et PDOStatment dans $_SESSION sur le serveur, ce qui permettrait de réduire l'overhead généré par ce mécanisme ?
Merci de m'aider à clarifier mes idées sur ce sujet.