summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsyuilo <4439005+syuilo@users.noreply.github.com>2026-01-14 16:12:44 +0900
committersyuilo <4439005+syuilo@users.noreply.github.com>2026-01-14 16:12:44 +0900
commitec683f04d18791d1e22f7e0388059d06de96dc6f (patch)
treec310aaede7a4fd7426341f80a404259b1c958902
parentrefactor(frontend): anyを除去2 (#17092) (diff)
downloadmisskey-ec683f04d18791d1e22f7e0388059d06de96dc6f.tar.gz
misskey-ec683f04d18791d1e22f7e0388059d06de96dc6f.tar.bz2
misskey-ec683f04d18791d1e22f7e0388059d06de96dc6f.zip
enhance(dev): メモリ使用量比較のActionsでGCしてから取得する
Resolve #16961
-rw-r--r--packages/backend/scripts/measure-memory.mjs6
-rw-r--r--packages/backend/src/boot/entry.ts4
-rw-r--r--packages/backend/src/env.ts1
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)[]) {