Bonjour,
Je dois développer un site communautaire qui à des objectifs commerciaux et donc d’avoir à terme un gros trafic.
Après avoir lu plusieurs posts ici et sur arNuméral qui mettent en garde contre l’utilisation de views sur un site à gros trafic.
Je suis donc parti dans l’idée de ne pas utiliser ce module (ni panel, j’avais posé la question il y a peu de temps sur arNuméral mais j’aurais pu chercher un peu, il semble que cela soit proscrit !).
J’ai du coup deux questions :
-
Est-il envisageable de développer son propres modules d’affichages en s’appuyant sur les champs cck (j’ai souvent lu que cck/views allaient de paire) ?
-
CCK est-il également un danger pour un site à gros trafic ? Comme, il semble être prévu pour être implémenté de base dans drupal 7, de prime abord je dirais non, mais bon, je préfère poser la questions avant de commencer à tout développer avec cck, pour me rendre compte ensuite qu’il entraîne une baisse de performance.
Merci de vos réponses
Timothée
- Vous devez vous identifier ou créer un compte pour écrire des commentaires

Un site communautaire devant supporter à terme un gros trafic est un projet de long terme qui supportera différentes phases de développement fonctionnels et d’optimisation (SW mais aussi architecture).
A mon sens, la question n’est pas de savoir si tu dois faire du spécifique : plus le temps passera, plus ta part de développements spécifiques sera prédominante.
La vraie question est de savoir quelle stratégie d’implémentation retenir.
Celà dépendant de quelques paramètres :
- Quelle est la maturité de ton story board ? (elle conditionne le niveau de réactivité qu’il te faudra maintenir dans la phase de dev).
- Quel est ton Time To Market (as-tu 6 mois de dev devant toi ou dois-tu lancer d’urgence une version fonctionnelle mais non optimisée en perf)
- Quelle doit-être ton niveau fonctionnel au lancement.
- Quels sont tes objectifs de ramp-up de trafic.
En fonction de la réponse à ces questions, tu peux par exemple choisir d’utiliser views dans un premier temps pour garder beaucoup de flexibilité et prévoir de remplacer ces views par ton propre code lorsqu’elles seront figées.
L’idéal est de faire une projection du rampup attendu et de caler des releases fonctionnelles et des release d’optimisation (optimisation du code ET de l’architecture).
A partir de là, tu auras un plan de développement que tu pourras confronter à tes mesures terrains. Tu pourras alors anticiper les problèmes auxquels il faudra de toutes façons se confronter si ton site est successfull.
Pour ce qui est de CCK, pour moi la messe est dite. CCK entre dans le core et les titres et body des noeuds deviennent également des champs.
La question n’est donc plus de savoir s’il faut l’utiliser ou non, mais de savoir comment l’utiliser aux mieux. Les fils de discussions du groupe CCK sur drupal.org sont très utiles (indispensables) pour cela.
Bien sur, il n’y a pas de corrélation directe entre CCK et Views. Tu peux donc tout à fait exploiter ces champs dans tes propres modules.
Cordialement,
Erwan
Econq
106
Merci également pour cette réponse, elle me donne des pistes précieuses sur l’organisation du développement.
Cordialement,
Timothée.
timos
129
Pour info (même si le sujet est marqué résolu), j’ai benché CCK comme un sauvage sans pouvoir lui trouver de problèmes, en tout cas en Drupal 6 (drupal 7, pas encore testé, et drupal 5 c’était une horreur). Pas de problème voulant dire que pour gagner du temps en faisant l’équivalent à la main, cela demande un très gros investissement pour un résultat marginal.
Pour Views, comme le dit (en simplifiant un peu) conq, Views est un bon outil de maquettage. En plus il a le bon goût de te fournir les requêtes de remplacement pour un code fait à la main. Maintenant pour Views, la problématique est inversée par rapport à CCK. Un développeur qui a une bonne expérience en PHP et connaissant bien le framework Drupal, va aller beaucoup plus vite à faire ses listes à la main qu’à les faire sur Views.
Ceci étant dit, si dans le cahier des charges ton client indique qu’il veut pouvoir modifier «simplement» les listes lui-même, c’est une autre histoire ;-)
Dernière aspect très important, l’approche performance ne sera jamais la même selon la réponse à deux questions :
- quelle est la fréquence de maj du fond (nouveau contenus, modifications, etc…)
- quel est le % d’utilisateur authentifiés attendus.
En effet, si tu as une faible fréquence de MAJ et une majorité de trafic anonyme, tout sera mangé par le cache frontal. A l’inverse, une majorité d’authentifiés avec une forte MAJ, un soin particulier doit être donné à l’optimisation.
Yoran - arNuméral
Yoran
1039
Merci pour ces précisions Yoran,
Je pense que je vais effectivement utiliser views comme outil de maquettage. La seule chose qui me fait un peu peur, c’est le temps de maîtrise que demande l’outil…
Au niveau des performances, le site sera essentiellement utilisé par des usagers authentifiés, très peu de contenu étant prévu comme public (et même si cette partie reçoit bcp de visites, cela aura peu d’incidence, car les éléments seront essentiellement statiques et effectivement le système de cache devrait réguler tout ça).
La partie privée, elle, risque de devoir supporter des MAJ : nouveaux usagers (enfin espérons ;)), modifs de profils, nouvelles photos, etc…, d’où mes questions sur l’optimisation des performances.
timos
129
La seule chose qui me fait un peu peur, c’est le temps de maîtrise que demande l’outil.
Je te comprend fort bien :)
Pour le reste j’imagine que tu as toutes les informations pour faire tes choix.
Yoran - arNuméral
Yoran
1039
Yep,
Merci encore à tous les deux !
Timothée
timos
129