|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
|
Membre actif
![]() |
Bonjour,
Dans un système de gestion des cartes de temps, je crée un objet assez lourd de la façon suivante : Code :
Code :
__________________
http://www.overdrunk.net Pensez à la balise
|
||||
|
|
00
|
|
|
#2 |
|
Membre chevronné
![]() Inscription : septembre 2005 Messages : 714 ![]() |
Je ne sais pas la taille maximale d'une session mais une chose est sûre c'est une très mauvaise idée de mettre toutes ces informations là dans une session!!! Surtout sur une session existe par utilisateur et que tu as plusieurs utilisateurs imagine la redondance de donnée!!!!
Utilises une base de données et des requêtes beaucoup plus performant, pratique et maintenable!
__________________
Avant de poster : FAQ, tutos, rechercher, google, ... Après : ![]() Merci |
|
00
|
|
|
#3 |
|
Membre émérite
![]() Inscription : août 2006 Messages : 943 ![]() |
Ouais, mais ca dépend : le serialize() permet de passer un Objet "actif" d'une page à l'autre par des valeurs GET, POST ou bien SESSION, sans détruire l'objet, et donc son contexte d'utilisation.....
Pour les variables de SESSION, je suppose que tu es limités par le cache du Serveur. As tu une idée du poid de tes Objets ? Passer tes objets en GET, je pense pas que ca passera.... Peut être en POST ? Ou alors, autre solution effectivement : tu dirige le path de sauvegarde des SESSION sur une BDD, ce qui te permet de libérer de la ressource.... Mais je crois que ce n'est valable que pour une "fin de session"..... Pour plus d'info, le serialize() transforme tout ton objet en chaine de caractères. Donc effectivement, ce n'est pas très bon !!! Tu peux peut_être diminuer la taille de ton objet avec les méthodes __sleep() et __wakeup(), pour libérer un peu tes objets.... Pour plus d'info sur les session : http://fr3.php.net/manual/fr/ref.session.php Mais je ne pense pas que ca t'apprendra grand chose de plus....
__________________
Veni Vidi Vici ------------------------- Mes articles : developpez.com ou bien vbview.net ------------------------- Et SURTOUT ne pas oublier la bible PHP : --> php_manual_fr.chm!!! Et aussi : --> pear_manual_fr.chm!!! Ou encore : --> Les tutoriaux & cours PHP de Développez.com ------------------------- |
|
|
00
|
|
|
#4 |
|
Membre chevronné
![]() Inscription : septembre 2005 Messages : 714 ![]() |
Non... pas seulement mettre la session dans la base de données. Mettre les données dans la base de données.
__________________
Avant de poster : FAQ, tutos, rechercher, google, ... Après : ![]() Merci |
|
00
|
|
|
#5 |
|
Membre actif
![]() |
D'accord,
ça me force a reculer un peu dans ce cas. Je croyais pouvoir réussir a stoquer mes données pas trop loin pour pouvoir obtenir un gain de performance par rapport aux éternelles requêtes dans la base de données. Alors je crois que je vais simplifier un peu le tout et stoquer moins d'informations en mémoire. Ce que je comprends plus ou moins c'est que ça marchait a merveille jusqu'à tout dernièrement alors que j'ai migré de Fedore Core 4 a Fedora Core 6. Normalement, ça devrait améliorer les choses et ne pas les déteriorer. Je me suis assuré de d'allouer suffisament de ressources dans php.ini .
__________________
http://www.overdrunk.net Pensez à la balise
|
|
|
00
|
|
|
#6 |
|
Membre émérite
![]() Inscription : août 2006 Messages : 943 ![]() |
Ca marchait avant ?
Tu as changé de core PHP entre temps (entre le fedora 4 et 6) ? Tu devrais peut être jeter un oeil plus profondément dans le php.ini, par aquis de conscience....
__________________
Veni Vidi Vici ------------------------- Mes articles : developpez.com ou bien vbview.net ------------------------- Et SURTOUT ne pas oublier la bible PHP : --> php_manual_fr.chm!!! Et aussi : --> pear_manual_fr.chm!!! Ou encore : --> Les tutoriaux & cours PHP de Développez.com ------------------------- |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com