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

PHP & Base de données Discussion :

Bonne pratique : Stockage sur le client ou requêtes sql intempestives


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Février 2012
    Messages
    257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2012
    Messages : 257
    Par défaut Bonne pratique : Stockage sur le client ou requêtes sql intempestives
    Bonjour,
    Dans mes développements, j'ai l'habitude (idiote ?) de charger les données à chaque rafraîchissement ou changement de page.
    Même lorsqu'il n'y a pas eu de modifications de la BD.
    >>> Et ca fait travailler les serveurs et ils chauffent et ce n'est pas ce qui est préconisé pour notre belle planète

    Généralement, on a deux types de pages:
    Pages de listes: ex liste de tous les adhérents avec peu d'infos (nom, prénom,ville, tel, mail)
    Page type 'fiche': La fiche d'un adhérent avec cette fois ci tous ces infos.

    Alors je me posais cette question,
    Est-il judicieux de:
    1. Charger tous les listes dans des Array sessions dès l'arrivée du visiteur
      (comme ca plus d'appel à la BD lorsque l'on change de page)
    2. Pour les pages 'fiche': Cette fois-çi, charger toutes les infos à partir de la BD en variables normales
      et de recharger uniquement la session de cet adhérent lors d'un Update

    • Mais pour les listes ca risque de faire volumineux pour le client,
    • il y a-t'il une limites de stockage en ko pour les sessions (notamment pour les Smartphones) ?
    • Est que des Cookies seraient mieux ?


    Qu'en pensez-vous ?

  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,

    la meilleure soluce c'est de faire appel à un serveur de cache de type Memcached.
    Laisse tomber le stockage local.
    Je préfère de loin réserver le stockage local pour les formulaires multipages par exemple. Ce qui te permet de réafficher les données déjà saisies et ne soumettre le tout une fois la saisie finie.

  3. #3
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Février 2012
    Messages
    257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2012
    Messages : 257
    Par défaut
    Ah Ok, Memcached.
    je vais regarder ca.

  4. #4
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Février 2012
    Messages
    257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2012
    Messages : 257
    Par défaut
    Salut,
    j'ai regardé Memcached,
    apparemment il faut l'installer,
    aussi, comme je ne sais pas encore sur quel hébergeur, je vais posé mon développement,
    je crains de devoir galérer avec l'installation sur l'hébergeur que j'aurais choisi.

    Comment fonctionne d'ailleurs ce site developpez.net/
    (qui est foisonnant en BD) notamment en forums.

    Ils ne doivent pas charger tous les messages de toutes les discutions, si ?

  5. #5
    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,

    DVP s'étale (je pense) sur au moins une dizaine de serveurs dédiés (vu le nombre de pages affichées tous les jours et les temps de réponse). Et doit utiliser un gestionnaire de cache performant pour soulager les serveurs BDD.
    Après, savoir quels sont précisément les données techniques, c'est confidentiel ne serait-ce que pour des raisons de sécurité (moins tu exposes de surface d'attaque et mieux c'est)

  6. #6
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Février 2012
    Messages
    257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2012
    Messages : 257
    Par défaut
    Au sujet de la sécurité Mysql et des injections néfastes,
    Il y a html specialchars...

    Mais je trouve que ca permet à une personne d'essayer plusieurs fois d'attaquer les BD.

    J'ai pensé à un truc cette nuit.
    1. Faire un array avec tous les termes MySql dangereux (DELETE, TRUNC, DROP, <script ...)
    2. Sur les submit, vérifier chacun des POST s'ils contiennent un de ces termes
    3. Si c'est le cas: Blacklister l'adresse ip et bloquer le compte en changeant le Mdp

    Il y a aussi des requetes utilisant GET,
    du type: (SELECT * Form table WHERE id=:id) puis execute(array('id'=>$_GET['id']))
    là aussi on peut checker la valeur des GET.

    L'idée c'est de virer direct un user qui cherche des noises.
    Sans le laisser essayer d'autres choses.

    Qu'en pensez-vous ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Erreur étrange sur une execution de requete sql
    Par Petaroux dans le forum Bases de données
    Réponses: 6
    Dernier message: 13/02/2015, 14h25
  2. php POO question sur les class et requetes SQL
    Par craz00 dans le forum Langage
    Réponses: 3
    Dernier message: 28/02/2014, 00h25
  3. Boucle sur une table SAS requete SQL
    Par tidou95220 dans le forum SAS Base
    Réponses: 10
    Dernier message: 19/02/2013, 11h27
  4. interrogation sur l'envoi des requetes sql
    Par goute dans le forum Hibernate
    Réponses: 3
    Dernier message: 12/06/2009, 00h14
  5. Réponses: 2
    Dernier message: 03/05/2004, 12h13

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