Files
RSSHub/lib/index.js
2021-02-26 16:51:02 +08:00

36 lines
1.3 KiB
JavaScript

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/en/support');
module.exports = server;
}