diff options
| author | syuilo <Syuilotan@yahoo.co.jp> | 2023-06-10 13:45:11 +0900 |
|---|---|---|
| committer | syuilo <Syuilotan@yahoo.co.jp> | 2023-06-10 13:45:11 +0900 |
| commit | e8420ad90bd290a2c10d563f6ccbffd0d4a0a97b (patch) | |
| tree | 90c09fdd6ad4f8a53acb88e0a6218215816f9d47 /packages/backend/src/core/UserKeypairService.ts | |
| parent | enhance(backend): WebSocketのPing/Pongをプロトコル制御フレーム... (diff) | |
| download | sharkey-e8420ad90bd290a2c10d563f6ccbffd0d4a0a97b.tar.gz sharkey-e8420ad90bd290a2c10d563f6ccbffd0d4a0a97b.tar.bz2 sharkey-e8420ad90bd290a2c10d563f6ccbffd0d4a0a97b.zip | |
fix(backend): キャッシュが溜まり続けないように
Related #10984
Diffstat (limited to 'packages/backend/src/core/UserKeypairService.ts')
| -rw-r--r-- | packages/backend/src/core/UserKeypairService.ts | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/packages/backend/src/core/UserKeypairService.ts b/packages/backend/src/core/UserKeypairService.ts index 72c35c529c..d768f08650 100644 --- a/packages/backend/src/core/UserKeypairService.ts +++ b/packages/backend/src/core/UserKeypairService.ts @@ -1,4 +1,4 @@ -import { Inject, Injectable } from '@nestjs/common'; +import { Inject, Injectable, OnApplicationShutdown } from '@nestjs/common'; import * as Redis from 'ioredis'; import type { User } from '@/models/entities/User.js'; import type { UserKeypairsRepository } from '@/models/index.js'; @@ -8,7 +8,7 @@ import { DI } from '@/di-symbols.js'; import { bindThis } from '@/decorators.js'; @Injectable() -export class UserKeypairService { +export class UserKeypairService implements OnApplicationShutdown { private cache: RedisKVCache<UserKeypair>; constructor( @@ -31,4 +31,14 @@ export class UserKeypairService { public async getUserKeypair(userId: User['id']): Promise<UserKeypair> { return await this.cache.fetch(userId); } + + @bindThis + public dispose(): void { + this.cache.dispose(); + } + + @bindThis + public onApplicationShutdown(signal?: string | undefined): void { + this.dispose(); + } } |