diff options
| author | syuilo <syuilotan@yahoo.co.jp> | 2019-02-06 15:01:43 +0900 |
|---|---|---|
| committer | syuilo <syuilotan@yahoo.co.jp> | 2019-02-06 15:01:43 +0900 |
| commit | 9835945ee1088a2c89414e841e2048ed7f493ab6 (patch) | |
| tree | 86940b1c2dbd5c46b56d544ed610e7f8ea6c0d89 /src/queue/index.ts | |
| parent | Update queue setting (diff) | |
| download | misskey-9835945ee1088a2c89414e841e2048ed7f493ab6.tar.gz misskey-9835945ee1088a2c89414e841e2048ed7f493ab6.tar.bz2 misskey-9835945ee1088a2c89414e841e2048ed7f493ab6.zip | |
Improve queue option
Diffstat (limited to 'src/queue/index.ts')
| -rw-r--r-- | src/queue/index.ts | 40 |
1 files changed, 28 insertions, 12 deletions
diff --git a/src/queue/index.ts b/src/queue/index.ts index 54c0c13ae4..8105999b60 100644 --- a/src/queue/index.ts +++ b/src/queue/index.ts @@ -1,6 +1,7 @@ import * as Queue from 'bee-queue'; -import config from '../config'; +import * as httpSignature from 'http-signature'; +import config from '../config'; import { ILocalUser } from '../models/user'; import { program } from '../argv'; import handler from './processors'; @@ -31,10 +32,19 @@ function initializeQueue() { } } -export function createHttpJob(data: any) { - if (queueAvailable) { +export function deliver(user: ILocalUser, content: any, to: any) { + if (content == null) return; + + const data = { + type: 'deliver', + user, + content, + to + }; + + if (queueAvailable && !program.disableApQueue) { return queue.createJob(data) - .retries(3) + .retries(8) .backoff('exponential', 1000) .save(); } else { @@ -42,15 +52,21 @@ export function createHttpJob(data: any) { } } -export function deliver(user: ILocalUser, content: any, to: any) { - if (content == null) return; +export function processInbox(activity: any, signature: httpSignature.IParsedSignature) { + const data = { + type: 'processInbox', + activity: activity, + signature + }; - createHttpJob({ - type: 'deliver', - user, - content, - to - }); + if (queueAvailable && !program.disableApQueue) { + return queue.createJob(data) + .retries(3) + .backoff('exponential', 500) + .save(); + } else { + return handler({ data }, () => {}); + } } export function createExportNotesJob(user: ILocalUser) { |