Le meilleur moyen d'optimiser les performances des utilisateurs authentifiés?

22

Le mot-clé ici est authentifié !

Actuellement (pour autant que je sache), les moyens de facto d'optimiser l'accès anonyme sont les caches de pages statiques (vernis / squid / boost).

Cependant, pour autant que je sache, cela ne semble pas faire grand chose dans un scénario où la plupart de vos utilisateurs sont authentifiés.

Outre l'APC évident, Memcache et le fait de jeter de l'argent sur le matériel, quelle est la meilleure façon de régler les performances d'un site à fort trafic avec des utilisateurs principalement authentifiés?

Par exemple: drupal.org, réseaux sociaux, communautés, etc.

Je suis plus intéressé par Drupal 6 pour le moment, donc je suppose que MongoDB ne s'applique pas pour l'instant ...

Alex Weber
la source

Réponses:

13

Chaque site est différent, il faudra donc différentes astuces pour le faire fonctionner. Voici ceux que j'utilise pour nos sites pour les performances de connexion.

Si vous voulez VRAIMENT savoir ce qui cause le code lent, obtenez une mouture du cache de votre site. Qu'est-ce qui contribue au temps d'exécution des pages drupal?

edit: On dirait que la version 7.x d'Auth Cache commence à être développée. Je ne l'ai pas utilisé, mais quelque chose à examiner.

mikeytown2
la source
Merci pour les conseils, quelques modules intéressants là-bas! Je vais laisser cela ouvert encore quelques jours :)
Alex Weber
Il me semble me souvenir d'un thread gdo quelque part où vous parliez d'utiliser ESI pour les blocs Drupal. Savez-vous où nous en sommes avec ça?
Andy
6.x - drupal.org/project/esi 7.x - drupal.org/project/esi_api Je ne l'ai pas encore utilisé en production; l'ont utilisé sur nos serveurs de test et cela semble fonctionner.
mikeytown2
1
@ mikeytown2 Vous êtes la star de la performance de tous les temps!
AyeshK
4

Installez la mise en cache des pages utilisateur authentifiées (Authcache) et Easy authcache et écrivez vos plugins personnalisés pour une authcache facile. Les plugins rendent certaines parties de la page accessibles avec ajax. donc une grande partie de la page sera mise en cache et une partie changeante sera obtenue avec ajax. Vous pouvez utiliser du vernis et d'autres proxys pour mettre en cache ces pages.

Igor Rodinov
la source
3

Profilez vos pages lentes avec XHProf. C'est le meilleur outil pour montrer quelles fonctions sont lentes. L'autre outil utile est le journal des requêtes lentes de mysql.

moshe weitzman
la source
2

Drupal.org fonctionne vraiment sur Pressflow 6 et utilise Varnish ; le contenu est servi à l'aide d'un équilibreur de charge, et le moteur de base de données est probablement MariaDB .

Si vous avez un site similaire à Drupal.org pour le nombre d'utilisateurs enregistrés et pour le nombre de nœuds, vous devez vérifier si vous pouvez utiliser Pressflow; vérifier si vous pouvez utiliser MariaDB au lieu de MySQL est probablement la prochaine étape.

kiamlaluno
la source
Intéressant, je ne savais pas que Drupal.org utilisait MariaDB ... offre-t-il autant d'amélioration des performances?
Alex Weber
Environ 10%, nous utilisons également MariaDB. Je veux évaluer percona.com/software/percona-server ensuite car il semble aller de l'avant à un rythme rapide.
mikeytown2
Des trucs intéressants!
Alex Weber