-
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.js
35 lines (31 loc) · 1.27 KB
/
index.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
const app = require('./app');
const config = require('./config').value;
const fs = require('fs');
const logger = require('./utils/logger');
const cluster = require('cluster');
const numCPUs = require('os').cpus().length;
if (config.enableCluster && cluster.isMaster && process.env.NODE_ENV !== 'test' && process.env.NODE_ENV !== 'dev') {
for (let i = 0; i < numCPUs; i++) {
cluster.fork();
}
} else {
let server;
if (config.connect.socket) {
if (fs.existsSync(config.connect.socket)) {
fs.unlinkSync(config.connect.socket);
}
server = app.listen(config.connect.socket, parseInt(config.listenInaddrAny) ? null : '127.0.0.1');
logger.info('Listening Unix Socket ' + config.connect.socket);
process.on('SIGINT', () => {
fs.unlinkSync(config.connect.socket);
process.exit();
});
}
if (config.connect.port) {
server = app.listen(config.connect.port, parseInt(config.listenInaddrAny) ? null : '127.0.0.1');
logger.info('Listening Port ' + config.connect.port);
}
logger.info('🎉 RSSHub start! Cheers!');
logger.info('💖 Can you help keep this open source project alive? Please sponsor 👉 https://docs.rsshub.app/support');
module.exports = server;
}