summaryrefslogtreecommitdiff
path: root/packages/backend/src/boot
diff options
context:
space:
mode:
authorsyuilo <Syuilotan@yahoo.co.jp>2022-09-18 23:17:32 +0900
committersyuilo <Syuilotan@yahoo.co.jp>2022-09-18 23:17:32 +0900
commita66111ac1fa744a66f48d59484fad4c3d8837731 (patch)
tree29b3a2fadf80bab8bc8257895ffd14f742ab05b2 /packages/backend/src/boot
parent12.120.0-alpha.1 (diff)
downloadmisskey-a66111ac1fa744a66f48d59484fad4c3d8837731.tar.gz
misskey-a66111ac1fa744a66f48d59484fad4c3d8837731.tar.bz2
misskey-a66111ac1fa744a66f48d59484fad4c3d8837731.zip
refactor(backend): simplify boot
Diffstat (limited to 'packages/backend/src/boot')
-rw-r--r--packages/backend/src/boot/index.ts60
1 files changed, 31 insertions, 29 deletions
diff --git a/packages/backend/src/boot/index.ts b/packages/backend/src/boot/index.ts
index f67b09b1cc..fbf9e73e09 100644
--- a/packages/backend/src/boot/index.ts
+++ b/packages/backend/src/boot/index.ts
@@ -1,43 +1,27 @@
+
+/**
+ * Misskey Entry Point!
+ */
+
import cluster from 'node:cluster';
+import { EventEmitter } from 'node:events';
import chalk from 'chalk';
import Xev from 'xev';
-
import Logger from '@/logger.js';
import { envOption } from '../env.js';
-
-// for typeorm
-import 'reflect-metadata';
import { masterMain } from './master.js';
import { workerMain } from './worker.js';
-const logger = new Logger('core', 'cyan');
-const clusterLogger = logger.createSubLogger('cluster', 'orange', false);
-const ev = new Xev();
-
-/**
- * Init process
- */
-export default async function() {
- process.title = `Misskey (${cluster.isPrimary ? 'master' : 'worker'})`;
-
- if (cluster.isPrimary || envOption.disableClustering) {
- await masterMain();
+import 'reflect-metadata';
- if (cluster.isPrimary) {
- ev.mount();
- }
- }
+process.title = `Misskey (${cluster.isPrimary ? 'master' : 'worker'})`;
- if (cluster.isWorker || envOption.disableClustering) {
- await workerMain();
- }
+Error.stackTraceLimit = Infinity;
+EventEmitter.defaultMaxListeners = 128;
- // ユニットテスト時にMisskeyが子プロセスで起動された時のため
- // それ以外のときは process.send は使えないので弾く
- if (process.send) {
- process.send('ok');
- }
-}
+const logger = new Logger('core', 'cyan');
+const clusterLogger = logger.createSubLogger('cluster', 'orange', false);
+const ev = new Xev();
//#region Events
@@ -77,3 +61,21 @@ process.on('exit', code => {
});
//#endregion
+
+if (cluster.isPrimary || envOption.disableClustering) {
+ await masterMain();
+
+ if (cluster.isPrimary) {
+ ev.mount();
+ }
+}
+
+if (cluster.isWorker || envOption.disableClustering) {
+ await workerMain();
+}
+
+// ユニットテスト時にMisskeyが子プロセスで起動された時のため
+// それ以外のときは process.send は使えないので弾く
+if (process.send) {
+ process.send('ok');
+}