summaryrefslogtreecommitdiff
path: root/packages/backend/src/server
diff options
context:
space:
mode:
authorおさむのひと <46447427+samunohito@users.noreply.github.com>2025-12-20 19:15:05 +0900
committerGitHub <noreply@github.com>2025-12-20 19:15:05 +0900
commitf739cb6270e430a0693cc84c62c337eb77979c5b (patch)
treedd621aec2a2bee564d7d94a8d533cec4b522a203 /packages/backend/src/server
parentBump version to 2025.12.2-beta.3 (diff)
downloadmisskey-f739cb6270e430a0693cc84c62c337eb77979c5b.tar.gz
misskey-f739cb6270e430a0693cc84c62c337eb77979c5b.tar.bz2
misskey-f739cb6270e430a0693cc84c62c337eb77979c5b.zip
fix: admin/queue/deliver-delayedとadmin/queue/inbox-delayedの応答速度を改善 (#17009)
Diffstat (limited to 'packages/backend/src/server')
-rw-r--r--packages/backend/src/server/api/endpoints/admin/queue/deliver-delayed.ts10
-rw-r--r--packages/backend/src/server/api/endpoints/admin/queue/inbox-delayed.ts10
2 files changed, 6 insertions, 14 deletions
diff --git a/packages/backend/src/server/api/endpoints/admin/queue/deliver-delayed.ts b/packages/backend/src/server/api/endpoints/admin/queue/deliver-delayed.ts
index f3e440b4cb..86158d7e22 100644
--- a/packages/backend/src/server/api/endpoints/admin/queue/deliver-delayed.ts
+++ b/packages/backend/src/server/api/endpoints/admin/queue/deliver-delayed.ts
@@ -52,18 +52,14 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint-
super(meta, paramDef, async (ps, me) => {
const jobs = await this.deliverQueue.getJobs(['delayed']);
- const res = [] as [string, number][];
+ const counts = new Map<string, number>();
for (const job of jobs) {
const host = new URL(job.data.to).host;
- if (res.find(x => x[0] === host)) {
- res.find(x => x[0] === host)![1]++;
- } else {
- res.push([host, 1]);
- }
+ counts.set(host, (counts.get(host) ?? 0) + 1);
}
- res.sort((a, b) => b[1] - a[1]);
+ const res = [...counts.entries()].sort((a, b) => b[1] - a[1]);
return res;
});
diff --git a/packages/backend/src/server/api/endpoints/admin/queue/inbox-delayed.ts b/packages/backend/src/server/api/endpoints/admin/queue/inbox-delayed.ts
index e7589cba81..ad6a823b8f 100644
--- a/packages/backend/src/server/api/endpoints/admin/queue/inbox-delayed.ts
+++ b/packages/backend/src/server/api/endpoints/admin/queue/inbox-delayed.ts
@@ -52,18 +52,14 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint-
super(meta, paramDef, async (ps, me) => {
const jobs = await this.inboxQueue.getJobs(['delayed']);
- const res = [] as [string, number][];
+ const counts = new Map<string, number>();
for (const job of jobs) {
const host = new URL(job.data.signature.keyId).host;
- if (res.find(x => x[0] === host)) {
- res.find(x => x[0] === host)![1]++;
- } else {
- res.push([host, 1]);
- }
+ counts.set(host, (counts.get(host) ?? 0) + 1);
}
- res.sort((a, b) => b[1] - a[1]);
+ const res = [...counts.entries()].sort((a, b) => b[1] - a[1]);
return res;
});