你好 @Ed_S - 你在测试中使用了哪个版本的 Discourse?我们定期更新 ember-cli 及其插件,所以我想确保我们查看的是相同的东西。
另外,你的虚拟机有多少个 CPU 核心?1 个?(你可以在控制台中运行 lscpu 来检查)
为了确保我们使用相同的数据,你能尝试运行以下命令吗:
/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
在我的测试液滴(1 CPU,1GB RAM,2GB 交换空间)上,我看到这个:
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
我们在这里使用的是相当标准的 ember 工具,所以我不太确定在配置方面我们能做些什么来减少内存使用。我们的长期目标是迁移到使用 Embroider,这可能会给我们提供更多选择。