Utilisateurs expulsés du sujet, plus de mémoire requise ?

Aujourd’hui, mon forum a connu son premier pic de trafic lié à un match, et les utilisateurs ont rencontré leur premier gros problème. Ils recevaient des messages de déconnexion toutes les 5 à 10 minutes, étaient redirigés vers l’écran d’accueil, mais dans la plupart des cas, restaient connectés.

Mon forum est hébergé sur un Basic Droplet de DigitalOcean, avec un CPU partagé et 1 Go de RAM, et il est en ligne depuis environ une semaine.

Le pic s’est produit pendant le match, où 400 messages ont été publiés dans un seul fil de discussion en 90 minutes (alors que les gens suivaient le match en direct). Il semblait y avoir entre 40 et 60 auteurs en ligne pendant cette période, et je ne pense pas qu’il y ait eu beaucoup de visiteurs anonymes (nous avons au total 250 membres enregistrés).

Ceci est mon tout premier forum. Pensez-vous que cela représente les limites d’un Droplet d’entrée de gamme ?

L’utilisation du CPU a semblé atteindre un pic à 60 %, et le forum est resté rapide et réactif pendant le match.

DigitalOcean ne propose pas de graphique de mémoire, mais j’ai accédé à la console peu après le match et l’utilisation était de 87 % (avec 2 Go d’espace d’échange, environ 37 %).

Quelle serait la marche à suivre recommandée ?

  • Passer à un Droplet de 2 Go pour le prochain match et voir comment cela se passe ?
  • Refaire une installation propre, peut-être en supprimant certains plugins ?
  • Modifier le seuil qui déclenche l’événement ?

Toutes mes excuses pour mon inexpérience, je suis encore en phase d’apprentissage.

Oui, je commencerais par là.

Par « déconnexion aléatoire des utilisateurs »… je n’en ai jamais entendu parler… voulez-vous dire cette annonce en haut du sujet ?

En raison d’une charge extrême, cela est temporairement affiché pour tout le monde tel qu’un utilisateur déconnecté le verrait

La recherche sera également automatiquement désactivée dans ces scénarios de charge élevée.

Merci pour votre réponse rapide. C’est exactement ce que je vais faire.

Oui, je pense que le message de charge extrême est ce que les gens ont observé, avec une redirection automatique vers la page d’accueil du forum.

La grande majorité a vu ce message et a simplement été redirigée. Rien de plus.

Quelques-uns ont indiqué que cela leur arrivait également habituellement. Mais en plus, à une ou deux reprises, ils ont également été déconnectés simultanément.

Je ne pense pas qu’il y ait de redirection ni de déconnexion automatique, donc je ne sais pas de quoi ils parlent. Vous voyez simplement le sujet en tant qu’utilisateur anonyme en raison d’une charge importante.

Je me demande s’il y a un problème avec votre installation. Avez-vous utilisé notre guide d’installation officiel ? Des plugins tiers étranges ?

Oui, ce sont bien les instructions que j’ai suivies.

Il est tout à fait possible que j’aie fait une erreur lors de mon installation.

Il m’a fallu plusieurs tentatives car c’était la première fois, et j’ai effectué quelques reconstructions en expérimentant avec des plugins.

Les plugins que j’ai installés sont :

Docker manager
Legal tools
Who’s online
Formatting toolbar

Donc je pense que ce sont des plugins assez standards.

La fonction « Qui est en ligne » peut être particulièrement gourmande en ressources.

Est-ce que trop de skins seraient également considérés comme une grosse consommation de ressources ?

Juste une mise à jour pour le fil de discussion.

L’augmentation de la mémoire (de 1 Go à 2 Go) n’a pas semblé avoir un grand impact lors du pic récent. Bien que je n’aie jamais modifié/reconstruit mon app.yml, je ne sais pas si cela aurait fait une différence ?

En revanche, le passage du CPU de 1 processeur virtuel à 2 semble avoir réglé le problème. :+1:

Nous avons été très occupés récemment avec les nouvelles signatures de joueurs et personne n’a signalé de déconnexion. Gros test demain avec un grand match en cours, mais tout semble bon.

Vous devrez mettre à jour votre fichier app.yml et le reconstruire pour bénéficier réellement de ces améliorations.

db_shared_buffers devrait représenter 25 % de la mémoire de votre système, soit 512 Mo. Votre paramètre actuel est probablement de 256 Mo.

unicorn_workers correspond à deux par cœur, alors passez-le de 2 à 4.

Je le ferai aujourd’hui. Merci !

Comment s’est passée la test hier ? Est-ce que les mises à niveau ont aidé ?

Beaucoup mieux, merci :slightly_smiling_face:.

Contrairement à la dernière fois où c’était une gêne constante (survenant toutes les 4 ou 5 minutes) pendant le jeu du week-end, cela ne semblait pas être un problème majeur.

Il semble qu’une minorité d’utilisateurs ait reçu un message de charge élevée une seule fois pendant le jeu. Mais personne n’a été exclu du fil de discussion.

La migration vers Discourse a été un succès retentissant, avec de nombreux contributeurs que l’on n’avait pas vus depuis des années (au moins 50 % d’utilisateurs en plus). Donc dans deux semaines, je vais passer de Digital Ocean à Hetzner afin de pouvoir maintenir un coût abordable tout en ayant un serveur plus puissant pour gérer les pics de charge (bien que je sois tenté de simplement augmenter et réduire la puissance du serveur pendant cette fenêtre de deux heures par semaine).