diff options
| author | syuilo <syuilotan@yahoo.co.jp> | 2019-02-10 11:44:08 +0900 |
|---|---|---|
| committer | syuilo <syuilotan@yahoo.co.jp> | 2019-02-10 11:44:08 +0900 |
| commit | 310371658bef90e8c982eaf94eea99c63617d7ab (patch) | |
| tree | fd8ffbedc1d2424f128f08c0d85d61a4846bdac9 /src/queue | |
| parent | Hide unusable follow buttons (#4208) (diff) | |
| download | sharkey-310371658bef90e8c982eaf94eea99c63617d7ab.tar.gz sharkey-310371658bef90e8c982eaf94eea99c63617d7ab.tar.bz2 sharkey-310371658bef90e8c982eaf94eea99c63617d7ab.zip | |
重いのでジョブキュー無効化
Diffstat (limited to 'src/queue')
| -rw-r--r-- | src/queue/index.ts | 61 | ||||
| -rw-r--r-- | src/queue/processors/export-blocking.ts | 4 | ||||
| -rw-r--r-- | src/queue/processors/export-following.ts | 4 | ||||
| -rw-r--r-- | src/queue/processors/export-mute.ts | 4 | ||||
| -rw-r--r-- | src/queue/processors/export-notes.ts | 4 |
5 files changed, 45 insertions, 32 deletions
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'); } diff --git a/src/queue/processors/export-blocking.ts b/src/queue/processors/export-blocking.ts index 95465a5e51..b30d8e3bc8 100644 --- a/src/queue/processors/export-blocking.ts +++ b/src/queue/processors/export-blocking.ts @@ -48,7 +48,7 @@ export async function exportBlocking(job: bq.Job, done: any): Promise<void> { if (blockings.length === 0) { ended = true; - job.reportProgress(100); + if (job.reportProgress) job.reportProgress(100); break; } @@ -74,7 +74,7 @@ export async function exportBlocking(job: bq.Job, done: any): Promise<void> { blockerId: user._id, }); - job.reportProgress(exportedCount / total); + if (job.reportProgress) job.reportProgress(exportedCount / total); } stream.end(); diff --git a/src/queue/processors/export-following.ts b/src/queue/processors/export-following.ts index 13ba0888f0..e6521d0652 100644 --- a/src/queue/processors/export-following.ts +++ b/src/queue/processors/export-following.ts @@ -48,7 +48,7 @@ export async function exportFollowing(job: bq.Job, done: any): Promise<void> { if (followings.length === 0) { ended = true; - job.reportProgress(100); + if (job.reportProgress) job.reportProgress(100); break; } @@ -74,7 +74,7 @@ export async function exportFollowing(job: bq.Job, done: any): Promise<void> { followerId: user._id, }); - job.reportProgress(exportedCount / total); + if (job.reportProgress) job.reportProgress(exportedCount / total); } stream.end(); diff --git a/src/queue/processors/export-mute.ts b/src/queue/processors/export-mute.ts index 8f72133cd6..74456c1da2 100644 --- a/src/queue/processors/export-mute.ts +++ b/src/queue/processors/export-mute.ts @@ -48,7 +48,7 @@ export async function exportMute(job: bq.Job, done: any): Promise<void> { if (mutes.length === 0) { ended = true; - job.reportProgress(100); + if (job.reportProgress) job.reportProgress(100); break; } @@ -74,7 +74,7 @@ export async function exportMute(job: bq.Job, done: any): Promise<void> { muterId: user._id, }); - job.reportProgress(exportedCount / total); + if (job.reportProgress) job.reportProgress(exportedCount / total); } stream.end(); diff --git a/src/queue/processors/export-notes.ts b/src/queue/processors/export-notes.ts index 4d973d015c..32e4cd1d6c 100644 --- a/src/queue/processors/export-notes.ts +++ b/src/queue/processors/export-notes.ts @@ -58,7 +58,7 @@ export async function exportNotes(job: bq.Job, done: any): Promise<void> { if (notes.length === 0) { ended = true; - job.reportProgress(100); + if (job.reportProgress) job.reportProgress(100); break; } @@ -83,7 +83,7 @@ export async function exportNotes(job: bq.Job, done: any): Promise<void> { userId: user._id, }); - job.reportProgress(exportedNotesCount / total); + if (job.reportProgress) job.reportProgress(exportedNotesCount / total); } await new Promise((res, rej) => { |