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 :

Travailler sur une session plutot que SGBD ?


Sujet :

Langage PHP

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 43
    Points : 28
    Points
    28
    Par défaut Travailler sur une session plutot que SGBD ?
    Bonjour,
    je me pose quelques questions en terme de performance.

    Je travaille en effet sur des tableaux de taille moyenne, du genre 3 tableaux de 20*20. Faisant beaucoup de calcul sur ces tableaux, basés sur de nombreux critères, je me suis demandé s'il valait mieux :

    1) charger tous les critères dans un tableau session au début (avec peu de requetes sql), et travailler directement sur les données session lors de mes script php, et sauvegarder en sql uniquement quand le traitement est fini.

    exemple :
    $_SESSION['tab1'] = array("Clef1"=>array("clef1.1"=1, ... ), "Clef2"=> ...);
    $_SESSION['tab2'][0] = array("Clef1"=>array("clef1.1"=1, ... ), "Clef2"=> ...);
    ...
    $_SESSION['tab2'][n] = array("Clef1"=>array("clef1.1"=1, ... ), "Clef2"=> ...);

    etc

    2) n'utiliser la session que pour quelques variables transverses, et utiliser des requêtes systématiquement pour charger mes données nécessaires, calculer en php, puis sauvegarder les résultats en sql.

    Donc en gros... vaut mieux travailler en session ou multiplier le nombre de requête sql? La, comme ca, je dirai le 1, mais j'en sais rien en fait, j'y connais rien du tout en performance, pt'etre que travailler en session, c'est méga lent...

    Merci de votre aide.

  2. #2
    Membre éprouvé Avatar de alain31tl
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    935
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 935
    Points : 1 019
    Points
    1 019
    Par défaut
    Bonjour,
    Plus généralement, on utilise les sessions dans 2 cas de figure.

    - Conserver à terme de la connection les identifiants d'un utilisateur, et certaines variables utiles et qui lui sont associées.
    Soit des variables isolées et non susceptibles d'être écrasées, modifiées.

    - Même chose, mais avec en plus des variables susceptibles d'être modifiées ou actualisées au fil de la visite.(Ecrasement)

    Mais la question qu'il faut se poser avant tout, est-ce que les calculs dont tu parles, doivent être impérativement enregistrés sur ta dbd, ou bien ils sont utiles uniquement pour un usage en ligne.
    Dans ce dernier cas, une mise en session ne gêne en rien.
    A l'inverse, session ou pas, tu gagneras pas en temps.

    Citation Envoyé par steinfield Voir le message
    pt'etre que travailler en session, c'est méga lent...
    Bien sûr que non, puisque tu n'as plus l'attente du temps de réponse client/serveur.
    Tes variables sont dispos instantannement dés lors qu'elles sont mises en session.

    Toutefois, il est difficile de répondre objectivement, puisque l'usage des sessions dépend bcp du type d'application.
    Ce n'est pas parce que les choses sont difficiles qu'on n'ose pas les entreprendre.
    C'est parce qu'on n'ose pas les entreprendre qu'elles sont difficiles.

Discussions similaires

  1. Réponses: 10
    Dernier message: 03/05/2011, 13h24
  2. [Procédure stockée] Comment travailler sur une liste de ...
    Par WwiloO dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 13/02/2006, 11h22
  3. Travailler sur une base de donnée
    Par nolan76 dans le forum SQL Procédural
    Réponses: 7
    Dernier message: 31/01/2006, 17h51
  4. Minimize Maximize perso sur une form autre que Application
    Par sdebrois dans le forum API, COM et SDKs
    Réponses: 5
    Dernier message: 07/03/2005, 17h59
  5. Travailler sur une date
    Par HqX dans le forum Langage SQL
    Réponses: 11
    Dernier message: 05/10/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