enhance(backend): 設定ファイルでioredisの全てのオプションを指定可能に
This commit is contained in:
@@ -9,6 +9,7 @@ const redis = new Redis({
|
||||
password: config.redis.pass,
|
||||
keyPrefix: `${config.redis.prefix}:`,
|
||||
db: config.redis.db ?? 0,
|
||||
...(config.redis.extra ?? {}),
|
||||
});
|
||||
|
||||
redis.on('connect', () => redis.disconnect());
|
||||
|
||||
@@ -48,6 +48,7 @@ const $redis: Provider = {
|
||||
password: config.redis.pass,
|
||||
keyPrefix: `${config.redis.prefix}:`,
|
||||
db: config.redis.db ?? 0,
|
||||
...(config.redis.extra ?? {}),
|
||||
});
|
||||
},
|
||||
inject: [DI.config],
|
||||
@@ -63,6 +64,7 @@ const $redisForPub: Provider = {
|
||||
password: config.redisForPubsub.pass,
|
||||
keyPrefix: `${config.redisForPubsub.prefix}:`,
|
||||
db: config.redisForPubsub.db ?? 0,
|
||||
...(config.redisForPubsub.extra ?? {}),
|
||||
});
|
||||
return redis;
|
||||
},
|
||||
@@ -79,6 +81,7 @@ const $redisForSub: Provider = {
|
||||
password: config.redisForPubsub.pass,
|
||||
keyPrefix: `${config.redisForPubsub.prefix}:`,
|
||||
db: config.redisForPubsub.db ?? 0,
|
||||
...(config.redisForPubsub.extra ?? {}),
|
||||
});
|
||||
redis.subscribe(config.host);
|
||||
return redis;
|
||||
|
||||
@@ -6,6 +6,7 @@ import * as fs from 'node:fs';
|
||||
import { fileURLToPath } from 'node:url';
|
||||
import { dirname, resolve } from 'node:path';
|
||||
import * as yaml from 'js-yaml';
|
||||
import type { RedisOptions } from 'ioredis';
|
||||
|
||||
/**
|
||||
* ユーザーが設定する必要のある情報
|
||||
@@ -42,6 +43,7 @@ export type Source = {
|
||||
pass: string;
|
||||
db?: number;
|
||||
prefix?: string;
|
||||
extra?: RedisOptions;
|
||||
};
|
||||
redisForPubsub?: {
|
||||
host: string;
|
||||
@@ -50,6 +52,7 @@ export type Source = {
|
||||
pass: string;
|
||||
db?: number;
|
||||
prefix?: string;
|
||||
extra?: RedisOptions;
|
||||
};
|
||||
redisForJobQueue?: {
|
||||
host: string;
|
||||
@@ -58,6 +61,7 @@ export type Source = {
|
||||
pass: string;
|
||||
db?: number;
|
||||
prefix?: string;
|
||||
extra?: RedisOptions;
|
||||
};
|
||||
meilisearch?: {
|
||||
host: string;
|
||||
|
||||
@@ -20,6 +20,7 @@ export function baseQueueOptions(config: Config, queueName: typeof QUEUE[keyof t
|
||||
family: config.redisForJobQueue.family == null ? 0 : config.redisForJobQueue.family,
|
||||
password: config.redisForJobQueue.pass,
|
||||
db: config.redisForJobQueue.db ?? 0,
|
||||
...(config.redisForJobQueue.extra ?? {}),
|
||||
},
|
||||
prefix: config.redisForJobQueue.prefix ? `${config.redisForJobQueue.prefix}:queue:${queueName}` : `queue:${queueName}`,
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user