From 310371658bef90e8c982eaf94eea99c63617d7ab Mon Sep 17 00:00:00 2001 From: syuilo Date: Sun, 10 Feb 2019 11:44:08 +0900 Subject: 重いのでジョブキュー無効化 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/queue/index.ts | 61 +++++++++++++++++++++++++++++++++--------------------- 1 file changed, 37 insertions(+), 24 deletions(-) (limited to 'src/queue/index.ts') diff --git a/src/queue/index.ts b/src/queue/index.ts index 5d3baa8243..7dc2319f50 100644 --- a/src/queue/index.ts +++ b/src/queue/index.ts @@ -8,12 +8,13 @@ import handler from './processors'; import { queueLogger } from './logger'; const enableQueue = !program.disableQueue; +const enableQueueProcessing = !program.onlyServer && enableQueue; const queueAvailable = config.redis != null; const queue = initializeQueue(); function initializeQueue() { - if (queueAvailable) { + if (queueAvailable && enableQueue) { return new Queue('misskey', { redis: { port: config.redis.port, @@ -42,7 +43,7 @@ export function deliver(user: ILocalUser, content: any, to: any) { to }; - if (queueAvailable && !program.disableApQueue) { + if (queueAvailable && enableQueueProcessing) { return queue.createJob(data) .retries(8) .backoff('exponential', 1000) @@ -59,7 +60,7 @@ export function processInbox(activity: any, signature: httpSignature.IParsedSign signature }; - if (queueAvailable && !program.disableApQueue) { + if (queueAvailable && enableQueueProcessing) { return queue.createJob(data) .retries(3) .backoff('exponential', 500) @@ -70,47 +71,59 @@ export function processInbox(activity: any, signature: httpSignature.IParsedSign } export function createExportNotesJob(user: ILocalUser) { - if (!queueAvailable) throw 'queue unavailable'; - - return queue.createJob({ + const data = { type: 'exportNotes', user: user - }) - .save(); + }; + + if (queueAvailable && enableQueueProcessing) { + return queue.createJob(data).save(); + } else { + return handler({ data }, () => {}); + } } export function createExportFollowingJob(user: ILocalUser) { - if (!queueAvailable) throw 'queue unavailable'; - - return queue.createJob({ + const data = { type: 'exportFollowing', user: user - }) - .save(); + }; + + if (queueAvailable && enableQueueProcessing) { + return queue.createJob(data).save(); + } else { + return handler({ data }, () => {}); + } } export function createExportMuteJob(user: ILocalUser) { - if (!queueAvailable) throw 'queue unavailable'; - - return queue.createJob({ + const data = { type: 'exportMute', user: user - }) - .save(); + }; + + if (queueAvailable && enableQueueProcessing) { + return queue.createJob(data).save(); + } else { + return handler({ data }, () => {}); + } } export function createExportBlockingJob(user: ILocalUser) { - if (!queueAvailable) throw 'queue unavailable'; - - return queue.createJob({ + const data = { type: 'exportBlocking', user: user - }) - .save(); + }; + + if (queueAvailable && enableQueueProcessing) { + return queue.createJob(data).save(); + } else { + return handler({ data }, () => {}); + } } export default function() { - if (queueAvailable && enableQueue) { + if (queueAvailable && enableQueueProcessing) { queue.process(128, handler); queueLogger.succ('Processing started'); } -- cgit v1.2.3-freya