Dépannage d'un site lent qui était assez rapide jusqu'à ce matin

Comment puis-je résoudre les problèmes d’un site devenu lent (sans raison apparente) aujourd’hui ?

L’utilisation des ressources est très faible :


Il s’agit d’un droplet SFO3 - Ubuntu 24.04 (LTS) x64 avec 16 Go de mémoire / 4 vCPU AMD / 200 Go de disque, dont 30 % du disque est utilisé.

Le statut du service de DigitalOcean est normal toute la journée.

Des utilisateurs signalent un site lent dans divers endroits.

yaml :
UNICORN_WORKERS: 8
db_shared_buffers: "1024MB"
db_work_mem: "40MB"

J’ai reconstruit vers la dernière version et donné plus de mémoire à Sidekiq UNICORN_SIDEKIQ_MAX_RSS: 1000

Quelques erreurs 429 dans la console :


Le journal des erreurs des 3 derniers jours :

1 « J'aime »

que se passe-t-il en mode sans échec ?

1 « J'aime »

Je n’ai pas d’erreurs dans la console en mode sans échec, mais c’est beaucoup plus lent. Il faut environ 10 à 15 secondes pour charger quoi que ce soit et les images saccadent comme si elles arrivaient via un modem 14,4 Kbps.

Il a fallu environ 20 secondes pour charger /logs. Revenir à /admin a pris environ une minute.

Un “sondage” semble prendre beaucoup de temps :

Au fait, voici les plugins en cours d’exécution :

1 « J'aime »

Voici quelques points de données supplémentaires de ce matin. Sidekiq semble détendu :

Graphique de mémoire intéressant - après les reconstructions de l’application, il est d’environ 20 à 30 %, puis saute à 46 % pendant une sauvegarde et y reste :

Avez-vous installé le composant de thème « Badges célèbres dans les publications » ?

4 « J'aime »

Celui-ci ?

8 « J'aime »

Ouah ! Le jour et la nuit après avoir supprimé le composant Post Badges. Le désactiver n’a fait aucune différence, mais le supprimer oui. Plus d’erreurs de console non plus.

Merci @Falco !

5 « J'aime »

Eh bien, j’ai peur que ce ne soit pas ça, ou du moins pas tout.\n\nMaintenant, je vois des images cassées et ceci dans la console :\n

\n\n\n\n\nToujours un chargement lent ou pas de chargement du tout avec le spinner qui tourne…\n\n

1 « J'aime »

Je me demande si cela a quelque chose à voir avec le problème :

J’ai restauré Discourse à partir d’une sauvegarde il y a environ 4 semaines lorsque je l’ai déplacé d’un ancien droplet Ubuntu 16.4 LTS vers un nouveau fonctionnant sous Ubuntu 24.04. Je n’ai pas effectué de re-cuisson manuelle.

2 « J'aime »

Ça devient de plus en plus étrange. Voici ce qui se passe en passant de /logs à /admin en cliquant sur le lien « Retour au site ».

1 « J'aime »

Il y a eu un autre sujet récent avec l’erreur “no route named admin”.
Site Glitch Content Not Showing Up - #18 by Suresh_Suthar

Peut-être que cela est également lié à Cloudflare
Resolving "SyntaxError: Unexpected identifier #..." caused by Cloudflare Auto Minify

2 « J'aime »

Hmm. La mienne n’utilise pas Cloudflare, mais j’ai vu un en-tête dupliqué dans Chrome, comme dans le premier post là-bas.

Je viens de reconstruire sans plugins autres que docker_manager, donc je vous dirai comment cela se comporte.

Une autre chose à noter est que lorsqu’il se bloque dans Chrome, j’ai dû fermer cet onglet et en ouvrir un nouveau. Le rechargement forcé n’a rien fait.

1 « J'aime »

Maintenant, la sauvegarde nocturne vers S3 échoue sans aucun changement dans la configuration :

[2024-10-10 15:03:04] Uploading archive...
[2024-10-10 15:14:33] EXCEPTION: multipart upload failed: Net::WriteTimeout with #<TCPSocket:(closed)>

EDIT : Deux sauvegardes déclenchées manuellement ont échoué avec la même erreur ci-dessus, mais ensuite deux sauvegardes manuelles ont réussi. Le tout sans aucun changement dans la configuration. :person_shrugging:

1 « J'aime »

Je ne vois pas d’erreurs dans la console, juste des temps de chargement très lents par intermittence :

Discourse Doctor semble bien fonctionner lors d’une exécution, puis lors d’une seconde exécution signale que le port 587 est probablement bloqué, ce qui est étrange car il a livré le courrier de test lors de la première exécution, puis à nouveau avec succès lors de la troisième exécution :

La connexion au port 587 a échoué.
====================================== SOLUTION =======================================
Le problème le plus probable est que votre serveur bloque le trafic SMTP sortant.
Si vous utilisez un service comme Mailgun ou Sendgrid, essayez d'utiliser le port 2525.

Ai-je raison de penser qu’il y a quelque chose d’étrange avec cette gouttelette DigitalOcean ?

Il semble que ce droplet ait des problèmes de réseau - le téléchargement est assez lent, mais notez la vitesse d’envoi :scream::

speedtest-cli
Retrieving speedtest.net configuration...
Testing from Digital Ocean (24.199.xxx.xxx)...
Retrieving speedtest.net server list...
Selecting best server based on ping...
Hosted by Next Level Infrastructure (Santa Clara, CA) [4.38 km]: 2.242 ms
Testing download speed................................................................................
Download: 839.25 Mbit/s
Testing upload speed......................................................................................................
Upload: 1.27 Mbit/s
1 « J'aime »

Voici la conclusion heureuse de cette saga…

Après avoir exécuté les tests de débit réseau speedtest-cli et iperf3 qui ont montré des vitesses abyssalement lentes entre le droplet et le monde extérieur, j’ai demandé à DigitalOcean d’enquêter et ils ont conclu après avoir effectué leurs propres tests :

Nous avons découvert des problèmes avec l’hyperviseur où se trouve votre Droplet. Nous travaillons avec notre équipe backend pour migrer votre Droplet vers un autre hyperviseur.

Tout va bien à nouveau.

3 « J'aime »

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.