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 :

Question vitesse, MySQL vs Switch [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Inscrit en
    Janvier 2012
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Janvier 2012
    Messages : 12
    Par défaut Question vitesse, MySQL vs Switch
    Bonjour

    Dans l'idée de créer un CMS sous forme de site web), pour afficher une page X on doit charger différents modules dans les zones appropriées. Pour cela je me base sur trois choses:
    • l'URL (évidement)
    • le status de l'utilisateur (admin, membre, invite etc .)
    • l'event (un joker pour afficher différemment selon le bon vouloir de l'administrateur).


    Bref on a donc une Page = une liste de Zone-Module dépendante de ces 3 paramètres.

    L'idée classique est de faire un simple switch ultra long, qui va s'allonger à chaque nouvelle page, nouveau type de membre etc.

    L'idée était aussi de créer une table SQL (MySQL InnoDB) pour gérer tous ça (voire 2, je ne suis pas encore sûr).

    Sachant qu'on est connecté à la BDD d'office, j'aimerais savoir laquelle de ces deux méthodes sera la plus performante et/ou la plus évolutive.

    P.S: s'il vous plaît, ne dites pas "ça dépend" sans préciser (précisément) de quoi ça dépend, merci.

  2. #2
    Expert confirmé
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Par défaut
    Ni l'un ni l'autre, il faut que tu mettes en place un design logiciel qui réponde à ce besoin. Je te recommande le patron MVC: http://julien-pauli.developpez.com/t...vc-controleur/

  3. #3
    Membre habitué
    Inscrit en
    Janvier 2012
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Janvier 2012
    Messages : 12
    Par défaut
    Il est deja en MVC et la c'est le front controller qui doit s'en charger, mais je vois pas en quoi sa influe sur le problemme.

  4. #4
    Expert confirmé
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Par défaut
    Eh bien c'est normalement le rôle du routeur de permettre l'accès aux pages selon ces 3 paramètres. Les pages n'ont pas besoin d'être physiques, un seul contrôleur peut se charger de plusieurs pages et différencier le contenu selon ces 3 fameux paramètres en choisissant les données à importer de MySQL par exemple.

  5. #5
    Membre habitué
    Inscrit en
    Janvier 2012
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Janvier 2012
    Messages : 12
    Par défaut
    Voilà, la question est ou stoquer ces donnes, de manière classique, on fait un switch énorme avec toutes les possibilités, je voudrais essayer l'idee de les stoquer avec MySql, je demande justement lequel de ces deux methode était la plus rapide.
    D'après mes tests le Switch se révèlent plus rapides, mais j'aimerais avoir confirmation (ou infirmation^^).

  6. #6
    Expert confirmé
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Par défaut
    Pour répondre à la question: MySQL sera toujours plus lent qu'un bon gros SWITCH.

    Mais c'est en réalité une fausse question que tu poses là, un CMS à pour vocation de travailler avec une quantité illimitée de données sans jamais toucher au code source de l'application (ce qui serait le cas avec un switch vu que tu serais obligé de définir les données "en dur" dans le code PHP). Il est question ici de flexibilité, non de performances.

    Tu n'est par ailleurs pas obligé de choisir MySQL, il existe d'autres SGBD comme SQLite, PostgreSQL, MongoDB etc. et d'autres moyens de stocker des données comme XML, JSON, INI, Redis, Memcached...

    A toi de trouver ce qui correspond le mieux à ton besoin: s'il s'agit d'extraire des bouts de contenu variants peu, XML ou JSON seront tout à fait apte à endosser ce rôle. En revanche, si les données sont relationnelles (comme par exemple un article et ses commentaires) alors une base de données sera plus appropriée.

  7. #7
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 693
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 693
    Par défaut
    Un peu de code pourrait peut être aider à y voir plus clair.
    Avec un MVC bien structuré tu n'as pas besoin de base de données ni de gros switch comme tu semble vouloir le faire.
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

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

Discussions similaires

  1. question sur mysql et sql server
    Par DJERDJAR YACINE dans le forum Outils
    Réponses: 1
    Dernier message: 19/07/2007, 08h54
  2. question de mysql
    Par etplus dans le forum Requêtes
    Réponses: 1
    Dernier message: 04/03/2007, 00h35
  3. Question Division Mysql
    Par Joe Le Mort dans le forum SQL Procédural
    Réponses: 4
    Dernier message: 18/12/2006, 13h13
  4. Diverses questions concernant mysql et php
    Par chnain dans le forum Requêtes
    Réponses: 3
    Dernier message: 22/08/2006, 18h42
  5. [Question] Php - MySQL
    Par Badaboumpanpan dans le forum Requêtes
    Réponses: 4
    Dernier message: 20/06/2006, 17h55

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