IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Taille et nombre maximum de sessions possible


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Octobre 2008
    Messages
    104
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 104
    Par défaut Taille et nombre maximum de sessions possible
    Bonjour,

    Je dois analyser le code d'une application php qui a été sujet d'une mauvaise performance quand le nombre de connexions simultanées est monté un peu.

    Ma remarque principale: chaque champ de chaque formulaire est stocké dans une session ayant le même nom que celui du champ concerné , le nombre de champs pour chaque page (6 pages) varie entre 5 à 500 (si l'utilisateur veut ajouter 20 personnes via une liste déroulante , javascripte introduira presque 25 nouveaux champs par personne; 500 champs = 500 sessions :o je sais) . certains champs sont des textearea avec tinymce ou l'utilisateur peut coller tout un fichier word.
    une des pages contient 10 boutons parcourir pour uploder des fichiers , j'ai trouvé des fichiers a 1000ko voir 6000 ko, ces fichiers sont stockés dans des sessions , une session par fichier.

    Les deux problèmes les plus courants étaient , la perte des données et quelques utilisateurs se trouvent avec des données qui ne leur appartient pas.

    Je voudrais fournir des informations exacts alors ma question est :
    Quelle est la taille maximal que peut contenir une session et est ce qu'il y a un nombre de sessions à ne dépasser?
    Et est ce que le scénario que je viens de vous présenter peut causer aussi le problèmes des informations qui apparaissent chez une autre personne ou devrais je chercher d'avantages.

    Je précise que ces problèmes n'apparaissent que quand le nombre de connexions simultanées augmente légèrement.

    Merci

  2. #2
    Expert confirmé
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 142
    Billets dans le blog
    12
    Par défaut
    Salut,

    Des formulaires de 500 champs !!! Purée, c'est une application de comptage de grains de riz ou quoi ?
    Je ne comprends pas ceci :
    500 champs = 500 sessions
    La session est unique pour chaque utilisateur connecté, je ne vois pas ce que le nombre de champs vient faire la-dedans.

    Ensuite la taille pour une session n'est pas spécifiquement limitée. La session s'étalera sur la mémoire totale allouée à PHP pour fonctionner.
    Enfin, le fonctionnement (standard) de PHP fait que l'exécution ne traite qu'une session à la fois.

  3. #3
    Membre confirmé
    Inscrit en
    Octobre 2008
    Messages
    104
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 104
    Par défaut
    Citation Envoyé par rawsrc Voir le message
    Salut,

    Des formulaires de 500 champs !!! Purée, c'est une application de comptage de grains de riz ou quoi ?
    Hahaha , même dans ce cas , on devra pas faire comme ça!

    Je m'explique : Si dans la page j'ai les champs
    tache , date , description
    dans la partie traitement , y aura
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $_SESSION['tache'] = $_POST['tache'];
    $_SESSION['date '] = $_POST['date '];
    $_SESSION['date '] = $_POST['date '];
    Aussi , dans un formulaire , on donne a l'utilisateur d'ajouter des personne pour son projet et on lui donne avant le choix de saisir le nombre de ces personne , s'il choisis par exemple 18 personne , la page contiendera

    personne 1 : nom1 , prenom1 , reference1 , ....
    personne 2 : nom2 , prenom2 , reference2 , ....
    ...
    personne 18 : nom18 , prenom18 , reference18 , ....

    Ici j'ai donné exemple avec 3 champs mais au fait pour une personne le nombre des champs et presque 25 champs

    18*25 dans une seule page et a envoyer dans un seul formulaire :s ....

    Dasn la partie traitement y a avec une boucle for:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $_SESSION['personne'.$i]['nom']=$_POST['nom'.$i];
    $_SESSION['personne'.$i]['prenom']=$_POST['prenom'.$i];
    ...
    Des sessions crée dynamiquement j'en ai conté 9, chaqu’une peut contenir un tableau 3 dimensions de données.

    Je sais que c'est très mal fait, mais j'ai besoin de confirmation donc ma question reste toujours , est ce que ça peut engendrer les problèmes que j'ai mentionnée ci-dessus!
    Merci

  4. #4
    Expert confirmé
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 142
    Billets dans le blog
    12
    Par défaut
    Si tu relis mon précédent message tu as déjà quelques réponses
    Normalement tu ne devrais pas perdre des données en route.
    Si le traitement ne fait pas planter le serveur, tu devrais tracer pas à pas le script parce-que je n'ai jamais vu un problème de ce genre.
    Par contre à chaque fois les pertes étaient dues à des bogues dans les sources.

  5. #5
    Membre confirmé
    Inscrit en
    Octobre 2008
    Messages
    104
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 104
    Par défaut
    Ça veut dire encore du boulot à trouver ces bogues.
    Mercii pou la réponse

Discussions similaires

  1. Nombre maximum de variables session
    Par playitagainsam dans le forum ASP.NET
    Réponses: 2
    Dernier message: 28/10/2011, 16h30
  2. ORA-00018: nombre maximum de sessions atteint
    Par frankyves dans le forum Administration
    Réponses: 7
    Dernier message: 05/03/2008, 13h51
  3. [10G] connaitre le nombre max de sessions
    Par NeHuS dans le forum Oracle
    Réponses: 1
    Dernier message: 28/03/2006, 08h53
  4. Nombre maximum de fichiers ouverts par processus
    Par galinoo dans le forum Windows
    Réponses: 3
    Dernier message: 27/10/2004, 17h47
  5. Nombre maximum de textures
    Par venomelektro dans le forum OpenGL
    Réponses: 7
    Dernier message: 02/09/2004, 15h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo