Guide sur l'infrastructure d'hébergement de Discourse

J’héberge Discourse sur une instance EC2, et selon les données historiques du CDN, la taille de la communauté devrait générer en moyenne environ 20,03 millions de requêtes par mois. J’aimerais des suggestions sur le nombre et la taille des instances nécessaires, ainsi que sur la nécessité d’un auto-scaling.

1 « J'aime »

Hmm, il est possible d’exécuter Discourse sur une seule machine, en utilisant un ou deux conteneurs Docker, mais je ne pense pas avoir vu quoi que ce soit concernant la répartition sur plus d’une instance. L’histoire habituelle est de passer à des instances plus grandes : plus de CPU, plus de RAM. Et on peut utiliser le stockage local ou le stockage cloud pour les ressources téléchargées.

Mais ce niveau de trafic ne représente qu’une ou deux requêtes par seconde, ce qui, je pense, n’est pas beaucoup.

L’histoire habituelle est de commencer sur une petite instance et de la redimensionner au besoin, en fonction de l’utilisation de la mémoire et de la charge CPU. Si vous avez beaucoup d’argent, commencez sur une instance plus grande.

Veuillez nous excuser, mais il s’agit de 20 millions de requêtes par mois. Le site web actuel utilise l’autoscaling avec 7 instances t3a.medium et 1 instance t3a.large, et nous migrons ce site web vers la plateforme Discourse. Je souhaiterais des suggestions sur le nombre et la taille des instances nécessaires, ainsi que sur la nécessité de l’autoscaling.

Il est difficile de deviner ce dont vous aurez besoin. Je connais un site avec 3,5 millions de pages vues par mois sur une VM de 8 Go avec 4 CPU. Vous pourriez l’utiliser comme guide. Il sert lui-même des images, ce que vous ne pouvez pas (facilement ?) faire avec plusieurs instances ; vous aurez probablement des actifs sur S3 et des CDN pour le site et le bucket S3.

Il est peu probable qu’une « requête » et une « page vue » soient la même chose.

Si vous avez besoin de mise à l’échelle dépend de vos modèles de trafic. Si vous aviez besoin de mise à l’échelle auparavant, vous en aurez probablement besoin avec Discourse. Si votre trafic est assez constant et que vous n’avez pas besoin de mise à l’échelle, alors la solution facile est une seule grosse VM, et probablement RDS et peut-être Elasticache. Cela dépend aussi des outils et méthodes que votre équipe aime utiliser, de votre budget, etc.

2 « J'aime »

Si une seule grosse instance EC2 hébergeant Discourse tombe en panne, le site entier tombera en panne. Veuillez fournir une solution à ce problème. Nous prévoyons d’utiliser RDS pour la base de données et Elasticache.

Utilisez ensuite ECS ou toute autre solution de votre choix avec un équilibreur de charge.

1 « J'aime »