diff options
| -rw-r--r-- | packages/backend/scripts/measure-memory.mjs | 6 | ||||
| -rw-r--r-- | packages/backend/src/boot/entry.ts | 4 | ||||
| -rw-r--r-- | packages/backend/src/env.ts | 1 |
3 files changed, 9 insertions, 2 deletions
diff --git a/packages/backend/scripts/measure-memory.mjs b/packages/backend/scripts/measure-memory.mjs index 017252d7ec..baa4198adf 100644 --- a/packages/backend/scripts/measure-memory.mjs +++ b/packages/backend/scripts/measure-memory.mjs @@ -25,11 +25,13 @@ async function measureMemory() { const startTime = Date.now(); // Start the Misskey backend server using fork to enable IPC - const serverProcess = fork(join(__dirname, '../built/boot/entry.js'), [], { + const serverProcess = fork(join(__dirname, '../built/boot/entry.js'), ['expose-gc'], { cwd: join(__dirname, '..'), env: { ...process.env, - NODE_ENV: 'test', + NODE_ENV: 'production', + MK_DISABLE_CLUSTERING: '1', + MK_FORCE_GC: '1', }, stdio: ['pipe', 'pipe', 'pipe', 'ipc'], }); diff --git a/packages/backend/src/boot/entry.ts b/packages/backend/src/boot/entry.ts index da585ad68d..56b339b6aa 100644 --- a/packages/backend/src/boot/entry.ts +++ b/packages/backend/src/boot/entry.ts @@ -86,6 +86,10 @@ if (!envOption.disableClustering) { ev.mount(); } +if (envOption.forceGc && global.gc != null) { + global.gc(); +} + readyRef.value = true; // ユニットテスト時にMisskeyが子プロセスで起動された時のため diff --git a/packages/backend/src/env.ts b/packages/backend/src/env.ts index ba44cfa2e6..9957938467 100644 --- a/packages/backend/src/env.ts +++ b/packages/backend/src/env.ts @@ -11,6 +11,7 @@ const envOption = { verbose: false, withLogTime: false, quiet: false, + forceGc: false, }; for (const key of Object.keys(envOption) as (keyof typeof envOption)[]) { |