Tune worker/job counts (#5346)

* デフォルトのワーカー数を1に

* Tune default job count
This commit is contained in:
MeiMei 2019-08-27 05:33:24 +09:00 committed by syuilo
parent ab6a84cd45
commit 6a0affcec1
4 changed files with 11 additions and 4 deletions

View file

@ -116,8 +116,12 @@ autoAdmin: true
# Whether disable HSTS
#disableHsts: true
# Clustering
# Number of worker processes
#clusterLimit: 1
# Job concurrency per worker
# deliverJobConcurrency: 128;
# inboxJobConcurrency: 16;
# IP address family used for outgoing request (ipv4, ipv6 or dual)
#outgoingAddressFamily: ipv4

View file

@ -159,7 +159,7 @@ async function init(): Promise<Config> {
return config;
}
async function spawnWorkers(limit: number = Infinity) {
async function spawnWorkers(limit: number = 1) {
const workers = Math.min(limit, os.cpus().length);
bootLogger.info(`Starting ${workers} worker${workers === 1 ? '' : 's'}...`);
await Promise.all([...Array(workers)].map(spawnWorker));

View file

@ -42,6 +42,9 @@ export type Source = {
id: string;
outgoingAddressFamily?: 'ipv4' | 'ipv6' | 'dual';
deliverJobConcurrency?: number;
inboxJobConcurrency?: number;
};
/**

View file

@ -203,8 +203,8 @@ export function createCleanRemoteFilesJob() {
export default function() {
if (!program.onlyServer) {
deliverQueue.process(128, processDeliver);
inboxQueue.process(128, processInbox);
deliverQueue.process(config.deliverJobConcurrency || 128, processDeliver);
inboxQueue.process(config.inboxJobConcurrency || 16, processInbox);
processDb(dbQueue);
procesObjectStorage(objectStorageQueue);
}