cs_Garno
Messages postés36Date d'inscriptionvendredi 4 mars 2005StatutMembreDernière intervention14 janvier 2009
-
10 févr. 2008 à 04:03
cs_Garno
Messages postés36Date d'inscriptionvendredi 4 mars 2005StatutMembreDernière intervention14 janvier 2009
-
10 févr. 2008 à 17:08
Bonjour a tous,
Ma question est une question totalement théorique que je me pose depuis quelques temps. Je travaille a la conception d'un "framework" personnel (gestion de modules, d'événements dans le temps et l'espace, utilisateurs, droits d'accès, etc..) bref quelque chose qui me sera utile dans mes développements futurs et dans mon apprentissage.
Je me questionne sur la lourdeur d'un tel framework qui va m'économiser beaucoup de temps dans le futur car il nécessite quand même beaucoup de requête MySQL. A la base j'ai déja 3-4 requêtes absolument nécessaire : une pour l'utilisateur courant, une pour les événements, une pour le menu.
Bref, je ne m'étenderais pas plus, je voulais savoir le nombre de requêtes moyenne dans un site web. Est-ce que passé 5 requêtes par page (sans ajout, modification ou supression d'infos) seulement pour l'affichage de la page c'est trop ? Sinon selon vous, quelle est le nombre maximal de requêtes indépendamment de la lourdeur de celle-ci.
Peut-être est-ce trop variable pour avoir une réponse ! Je laisse ça a votre discrètion :)
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 10 févr. 2008 à 08:49
Hello,
oui, cela dépend de beaucoup de choses et il est difficile de répondre à ta question.
Néanmoins, personnellement, je suis partisan de soulager la base de données (ou les bases) autant qu'on le peut. Ce qui ne veut pas dire qu'il faut toujours l'éviter : il faut trouver le juste équilibre.
L'utilisateur et ses droits vont évidemment rester en base. La gestion de ses droits, elle, peut être déportée dans les modules, sans les déclarer explicitement dans la base (par exemple, un utilisateur qui appartient au groupe modérateurs : le module ...heu...commentaires par exemple, saura tout seul que les utilisateurs de ce groupe ont le droit de modifier les commentaires, ce n'est pas explicite dans ta base du genre : user_can_modify_comments).
Le menu et plus globalement le paramètrage de ton applicatif web a tout a fait sa place dans un fichier xml.
Les données de tes modules, elles, doivent rester en base.
Ah, les données utilisateur réutilisées souvent (groupes de droits...) ont tout intérêt à être propagées via une session, plutôt que d'aller les chercher chaque fois en base.
Bref...tout est une question d'équilibre.
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 10 févr. 2008 à 11:39
Salut
si tu geres bien le cache, tu peux facilement supprimer plein de requetes sur beaucoup de pages (t'auras 15-20 requetes au pire pour generer une page, et seulement 1-2 pour afficher les pages du cache, ca se resumera a verifier que l'utilisateur a acces aux pages)
phpBB execute 13 requetes mysql lorsqu'on est meme pas connecte, sur la page d'index, quand on a 0 topics...
cs_Garno
Messages postés36Date d'inscriptionvendredi 4 mars 2005StatutMembreDernière intervention14 janvier 2009 10 févr. 2008 à 04:05
Ah oui pendant que j'y pense !
Est-ce que je serais mieux d'utiliser le XML pour les menus, modules et évènements que MySQL ? Lequel serait le plus rapide car mon système grossi assez vite en complexité.
p.s. : désolé pour mon premier message ... j'ai oublier de remplacer les retours a la ligne par des < br > lol
cs_Garno
Messages postés36Date d'inscriptionvendredi 4 mars 2005StatutMembreDernière intervention14 janvier 2009 10 févr. 2008 à 17:08
Merci a vous 2
Je me posais beaucoup de question tant qu'a la lourdeur de mon application puisque je compte la réutiliser beaucoup je tiens a me faire une base solide et vos réponses vont dans le sens que je croyais.
@malalam : Lorsque tu dis que j'ai intérêt a garder les informations de l'utilisateur courant en session tu parle de mettre mon objet usager en session grâche a serialize() ?