update: perf monitor for adjustSnapshotTime

This commit is contained in:
alikia2x (寒寒) 2025-03-25 22:38:57 +08:00
parent 2d8e990bc9
commit 17ded63758
Signed by: alikia2x
GPG Key ID: 56209E0CCD8420C6

View File

@ -181,6 +181,8 @@ export async function adjustSnapshotTime(
const targetOffset = Math.floor((expectedStartTime.getTime() - Date.now()) / (5 * MINUTE)); const targetOffset = Math.floor((expectedStartTime.getTime() - Date.now()) / (5 * MINUTE));
let timePerIteration = 0;
const t = performance.now();
for (let i = 0; i < WINDOW_SIZE; i++) { for (let i = 0; i < WINDOW_SIZE; i++) {
const offset = (currentWindow + targetOffset + i) % WINDOW_SIZE; const offset = (currentWindow + targetOffset + i) % WINDOW_SIZE;
const count = await getWindowCount(redisClient, offset); const count = await getWindowCount(redisClient, offset);
@ -197,13 +199,20 @@ export async function adjustSnapshotTime(
const now = new Date(); const now = new Date();
if (delayedDate.getTime() < now.getTime()) { if (delayedDate.getTime() < now.getTime()) {
const elapsed = performance.now() - t;
timePerIteration = elapsed / i;
logger.log(`Time per iteration: ${timePerIteration.toFixed(3)}ms`, "perf", "fn:adjustSnapshotTime");
return now; return now;
} }
const elapsed = performance.now() - t;
timePerIteration = elapsed / i;
logger.log(`Time per iteration: ${timePerIteration.toFixed(3)}ms`, "perf", "fn:adjustSnapshotTime");
return delayedDate; return delayedDate;
} }
} }
const elapsed = performance.now() - t;
timePerIteration = elapsed / WINDOW_SIZE;
logger.log(`Time per iteration: ${timePerIteration.toFixed(3)}ms`, "perf", "fn:adjustSnapshotTime");
return expectedStartTime; return expectedStartTime;
} }