JeuWeb - Crée ton jeu par navigateur
Le stockage en session - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : Le stockage en session (/showthread.php?tid=6102)

Pages : 1 2


Le stockage en session - supermeganono - 23-04-2012

Bonjour,

Je me pose pas mal de questions sur ce qui peut-être stocker en session et ce qui ne dois surtout pas y être. Je me renseigne pas mal sur les session php ces derniers temps et je leur ai trouver une utilité grandissante.
J'ai pu par exemple supprimer des tas de requêtes à travers mon site grâce au stockage de donnée en session qui ne change que très rarement voir pas du tout. Résumant le tout en une requête à la BDD lors de l'identification.

J'aimerai savoir quelle en est la limite ?
Que stockez-vous dans les sessions et surtout, que ne stockez vous pas dans les sessions ? et pourquoi ?

Merci d'éclairer un novice Wink


RE: Le stockage en session - Sephi-Chan - 23-04-2012

Généralement je ne mets rien en session : je n'utilise que des cookies signés (le contenu du cookie est chiffré, le rendant infalsifiable par l'utilisateur).

Quand je l'utilisais, je me limitais à de petites informations : tableaux de nombres, nombres, petites chaînes.

Si tu aimes les sessions, tu aimerais sûrement les systèmes de stockage en RAM type Redis ou Memcache. Mais ça demande du dédié…

Peux-tu nous donner des exemples de telles utilisations ? Smile


RE: Le stockage en session - php_addict - 23-04-2012

(23-04-2012, 04:42 PM)Sephi-Chan a écrit : Si tu aimes les sessions, tu aimerais sûrement les systèmes de stockage en RAM type Redis ou Memcache. Mais ça demande du dédié…

ou APC cache opcode qui permet principalement de réduire la vitesse d’exécution des scripts php, mais faut avoir un dédié


RE: Le stockage en session - Sephi-Chan - 23-04-2012

Oui, le store d'APC permet ça également (d'ailleurs, il faut différencier la partie store de la partie accélérateur)
D'ailleurs, les fonctionnalités de Memcache et de APC sont assez similaires et très baisques.
En revanche, Redis est beaucoup plus riches puisqu'il comprend de nombreux types de données !

J'invite tous les développeurs qui ne connaissent pas Redis à jeter un œil, ça pousse à réfléchir très différemment sur la façon de stocker les données ! Smile

D'ailleurs, certains sites internet n'utilisent que Redis pour le stockage. C'est notamment le cas du célèbre site pour adulte YouPorn (cf. l'article sur LinuxFr).

Eric, lead developer de YouPorn a écrit :I just want to let the devs know that Youporn.com relaunched two weeks
ago with Redis as our primary database. With @100 million page views
per day, our cluster of Redis slaves are handling over 300k queries
per second.



RE: Le stockage en session - Argorate - 23-04-2012

(23-04-2012, 05:10 PM)php_addict a écrit :
(23-04-2012, 04:42 PM)Sephi-Chan a écrit : Si tu aimes les sessions, tu aimerais sûrement les systèmes de stockage en RAM type Redis ou Memcache. Mais ça demande du dédié…

ou APC cache opcode qui permet principalement de réduire la vitesse d’exécution des scripts php, mais faut avoir un dédié
Eu... non! C'est tout l'inverse, ça permet d'augmenter la vitesse d'exécution en précompilant les script php, mais j'imagine que tu t'es juste trompé dans ta formulation Smile



RE: Le stockage en session - php_addict - 23-04-2012

(23-04-2012, 06:09 PM)Argorate a écrit : Eu... non! C'est tout l'inverse, ça permet d'augmenter la vitesse d'exécution en précompilant les script php, mais j'imagine que tu t'es juste trompé dans ta formulation Smile

Eu...non et oui! pas que :

apc_store ==> http://www.php.net/manual/fr/function.apc-store.php
apc_fetch ==> http://www.php.net/manual/fr/function.apc-fetch.php
apc_delete ==> http://www.php.net/manual/fr/function.apc-delete.php

tu n'a pas lu le manuel...Confusediffle:




RE: Le stockage en session - Sephi-Chan - 23-04-2012




RE: Le stockage en session - supermeganono - 23-04-2012

Alors pour les exemple :

Le login utilisateur pour le tchat, des rapports, la messagerie interne etc...
Des données tels que les recherches ou ressources.
En gros à part le login, ce ne sont que des chiffres.

Je m'étais surtout inquiétez du niveau de sécurité d'une session concernant deux trucs que j'ai retenus, les collisions de session et les vols de session. Alors s'il existe des solutions encore plus sûr, pourquoi pas Smile Puis ça permets d'avancer.

Et pour vos réponses, c'est pas loin d'être du chinois pour moi Smile Mais ça sera plus clair après quelques heures de lectures sur le net comme toujours ^^
Je vais aller me renseigner sur Redis et voir ce que c'est et surtout comment ça marche.


RE: Le stockage en session - Sephi-Chan - 23-04-2012

Non, ça va, la session est assez sûre. Pour se la faire voler, il faut avoir le cookie (PHPSESSID, dans le cas de PHP par défaut) d'un autre. Ça dépend aussi de la sécurité de ton site : si tu empêches qu'on injecte du code HTML dans ton site (et par extension du Javascript), tu limites considérablement les risques.


RE: Le stockage en session - php_addict - 23-04-2012

oups pardon...

il faut juste signaler que par défaut avec php , les sessions sont stockées en dur dans des fichiers mais tu peut très bien dire à php: "met moi les sessions en mémoire, en base de donnée, ou n'importe où en fait" , tu peut faire ton propre système de sessions

=> session_set_save_handler => http://php.net/manual/fr/function.session-set-save-handler.php