L'utilisation de la mémoire de build d'Ember-cli risque l'échec (OOM) sur la taille d'instance minimale

Salut @Ed_S - quelle version de Discourse utilisiez-vous pour ces tests ? Nous mettons régulièrement à jour ember-cli et ses extensions, je veux donc juste être sûr que nous examinons la même chose.

De plus, combien de cœurs de processeur vos machines virtuelles ont-elles ? 1 ? (vous pouvez vérifier en exécutant lscpu dans la console)

Pour que nous travaillions tous avec les mêmes données, pourriez-vous essayer d’exécuter :

/var/discourse/launcher enter app
cd /var/www/discourse/app/assets/javascripts/discourse
apt-get update && apt-get install time
NODE_OPTIONS='--max-old-space-size=2048' /usr/bin/time -v yarn ember build -prod

Sur mon droplet de test (1 CPU, 1 Go de RAM, 2 Go de swap), je vois ceci :

Command being timed: "yarn ember build -prod"
	User time (seconds): 369.74
	System time (seconds): 22.62
	Percent of CPU this job got: 81%
	Elapsed (wall clock) time (h:mm:ss or m:ss): 8:02.73
	Average shared text size (kbytes): 0
	Average unshared data size (kbytes): 0
	Average stack size (kbytes): 0
	Average total size (kbytes): 0
	Maximum resident set size (kbytes): 774912
	Average resident set size (kbytes): 0
	Major (requiring I/O) page faults: 253770
	Minor (reclaiming a frame) page faults: 1158920
	Voluntary context switches: 519269
	Involuntary context switches: 383328
	Swaps: 0
	File system inputs: 7521784
	File system outputs: 316304
	Socket messages sent: 0
	Socket messages received: 0
	Signals delivered: 0
	Page size (bytes): 4096
	Exit status: 0

Nous utilisons ici des outils ember assez standard, donc je ne suis pas sûr qu’il y ait beaucoup de choses que nous puissions faire en termes de configuration pour réduire l’utilisation de la mémoire. Notre objectif à long terme est de passer à l’utilisation d’Embroider, ce qui pourrait nous donner plus d’options.