أنا أعمل على أصغر تكوين مدعوم: 1 جيجابايت من ذاكرة الوصول العشوائي و 2 جيجابايت من مساحة التبديل. يبدو لي أن شيئًا ما في نص إعادة البناء يخبر Node.js باستخدام ذاكرة وصول عشوائي أكبر مما لدي، مما يبدو أنه يقمع جمع القمامة ويسبب الكثير من التبديل. هل هذا كما ينبغي؟
لاحظت هذا في سجل وحدة التحكم:
I, [2024-06-14T15:19:15.613029 #1] INFO -- : cd /var/www/discourse & su discourse -c 'bundle exec rake assets:precompile:build'
Node.js heap_size_limit (504.75) is less than 2048MB. Setting --max-old-space-size=2048 and CHEAP_SOURCE_MAPS=1
...[ConfigLoader]
...[Babel: @embroider/macros > applyPatches]
يقترح Stack Exchange (https://stackoverflow.com/questions/48387040/how-do-i-determine-the-correct-max-old-space-size-for-node-js) أن هذا ليس جيدًا:
كان الحد الأقصى لحجم المساحة القديمة المحدد له حد أعلى من إجمالي ذاكرة الوصول العشوائي التي كانت لدى الجهاز.
…
باختصار، على جهاز يحتوي على 2 جيجابايت من الذاكرة، سأقوم على الأرجح بتعيين --max-old-space-size إلى حوالي 1.5 جيجابايت لترك بعض الذاكرة للاستخدامات الأخرى وتجنب التبديل.
في هذا الوقت تقريبًا، أرى أن هناك قدرًا هائلاً من نشاط التبديل
# df -h / ; free ; uptime ; ps auxrc ; vmstat 5 5
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 25G 20G 4.7G 81% /
total used free shared buff/cache available
Mem: 1009140 860952 81820 1104 66368 43068
Swap: 2097144 707016 1390128
15:21:53 up 155 days, 23:02, 2 users, load average: 1.69, 1.85, 1.36
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
message+ 920 0.0 0.1 50192 1872 ? Rs Jan10 5:57 dbus-daemon
root 16979 0.0 0.0 0 0 ? R 14:14 0:02 kworker/u2:2
1000 24317 84.1 71.4 43775512 720984 ? Rl 15:19 2:07 ember
root 24346 0.0 0.3 40100 3468 pts/0 R+ 15:21 0:00 ps
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
2 1 710656 79768 7712 60940 350 283 586 352 1 2 3 2 90 4 0
1 5 798060 65440 3848 52544 21749 19198 23815 19247 3896 16477 30 17 0 52 1
0 1 885676 73820 1256 37388 19674 18806 20887 18811 3851 16681 21 20 0 55 3
1 0 704056 103080 11512 70892 8414 3910 17269 3914 1855 7618 64 11 0 25 1
1 0 693816 95020 11520 70908 1589 0 1589 54 470 1032 95 1 0 4 0
(هذا أثناء إعادة بناء وتحديث سطر الأوامر من حوالي 3.2.0.beta5-dev(bcb31f79ce) إلى (الأحدث) 3.3.0.beta3-dev(49fdccbb1d). اكتملت إعادة البناء بنجاح في حوالي 30 دقيقة.)