J’utilise ce plugin depuis deux ans sur mon forum à faible activité. Je pense que voir qu’il y a des personnes en ligne constitue une incitation pour les visiteurs à s’inscrire et à publier, car ils peuvent constater qu’il y a actuellement des gens ici qui liront et répondront (j’espère).
Je pense que la meilleure solution dans mon cas serait d’afficher la liste des personnes en ligne à la fois pour les visiteurs et pour les membres enregistrés. En raison de la faible activité, voir des personnes en ligne en même temps que nous est rassurant. De plus, il est bon de rester quand il y a d’autres personnes, et j’imagine que les gens seraient plus enclins à fermer la fenêtre s’il n’y a personne (de visible) autour.
Qu’en pensez-vous ? Bien sûr, je suppose que cela peut varier d’une communauté à l’autre…
J’ai installé le plugin sur mon nouveau forum, qui est beaucoup plus actif. Mon co-administrateur m’a demandé si nous pouvions désactiver le plugin pour les visiteurs, et je me demande si le désactiver aurait, en théorie, un impact négatif sur les nouvelles inscriptions et la participation.
Je pense que si nous montrons quelque chose aux utilisateurs, ils devraient avoir le sentiment qu’il y a de l’activité sur le site.
Peut-être que plusieurs utilisateurs devraient toujours être en ligne (de différentes machines, par exemple), afin qu’il n’y ait pas l’impression d’un site vide.
Cela dépend beaucoup du site. Mais si les participants voient de l’activité et un grand nombre d’utilisateurs en ligne, c’est bien.
Il existe d’anciens forums où, quand j’y vais, je vois souvent cette image : 1 participant, 2 invités. C’est un exemple qui me dit immédiatement que le forum est mort.
Nous avons utilisé le plugin Qui est en ligne pendant plusieurs mois. Après des tests approfondis, nous avons déterminé que ce plugin était la cause racine de certains problèmes de performance ; tous ces problèmes (les problèmes de performance) ont disparu après l’avoir désactivé. J’ai partiellement documenté cela ici :
Les forums Maker comptent une large base d’utilisateurs, mais il y a rarement suffisamment d’utilisateurs connectés simultanément pour saturer l’affichage des avatars « Qui est en ligne ». Nous avons constaté que le plugin « Qui est en ligne » était responsable d’une performance médiocre, allant jusqu’à provoquer des délais d’attente sur les requêtes, même avec seulement quelques utilisateurs connectés. Nous utilisons une configuration nginx externe avec une page hors ligne et, en raison de ces requêtes ayant expiré, nous affichions périodiquement la page de maintenance alors qu’aucune maintenance n’était en cours.
Nous servons désormais les images localement après avoir migré depuis Digital Ocean Spaces, ce qui crée une concurrence pour les workers Unicorn. Cependant, nous exécutons tout sur une VM avec 2 CPU et 4 Go de RAM, et notre base de données est relativement volumineuse (environ 400 000 messages, base de données de 6 Go), nous n’avons donc pas la place d’ajouter simplement beaucoup plus de workers Unicorn à 500 Mo chacun. Je soupçonne que si nous utilisions un stockage objet pour les images, l’impact global serait moindre en raison d’une concurrence réduite pour les workers Unicorn, mais cela ne prendrait pas grand-chose pour que l’impact reste significatif, étant donné que nous observons actuellement cet impact avec seulement deux utilisateurs connectés.
Mise à jour : La modification de la zone de limitation de débit flood de 12 req/s à 36 req/s, et de burst de 12 à 36, a au moins réduit l’impact de « Qui est en ligne ». Nous testons actuellement cette configuration.
Nouvelle mise à jour : avec le taux de flood triplé, nous n’avons reçu aucun rapport de problème.
J’utilise nginx externeet j’ai appliqué la limitation de débit à nginx externe, en utilisant le modèle ratelimited comme point de départ, mais j’utilise désormais la limitation de débit dans nginx interne, car nginx externe ne connaît pas quelles routes sont statiques et applique donc la limitation de débit aux routes statiques ainsi qu’aux routes dynamiques, ce qui, lorsque je l’ai fait, a provoqué de nombreuses échecs/reprises lors du chargement des ressources statiques. Notez que c’est une raison pour exécuter nginx externe ; sinon, je pense que tout le trafic IPv6 est attribué à l’adresse IP Docker et est limité en débit comme s’il provenait d’une seule adresse IP.
@neounix, je parierais que la combinaison d’nginx externe et de limites de taux plus élevées appliquées uniquement dans nginx externe vous permettrait de réactiver la fonction « Qui est en ligne », si vous le souhaitez. Nous sommes passés d’une réponse du site frustramment lente (du moins pour moi) à une différence de performance imperceptible (<500 ms pour l’affichage complet depuis un serveur sans CDN, avec un ping de 70 ms) simplement en augmentant les limites de taux dans nginx externe (déjà configuré à l’origine pour la page de maintenance).
Peut-être… mais nous avons perdu tout intérêt pour ce plugin pour l’instant. Aucun utilisateur ne l’a « regretté », et je ne pense donc pas qu’il apporte suffisamment de valeur au site pour que nous ayons à l’ajuster, surtout compte tenu de notre charge de travail sur d’autres tâches de développement web.