1
0
mirror of https://github.com/c9fe/22120.git synced 2024-11-20 01:42:47 +01:00
22120/run.cjs
Cris Stringfellow 745a9a44a6
Minor fixes and improvements with significants results
Lots of positive payoffs
2023-07-23 09:48:28 +08:00

25 lines
723 B
JavaScript
Executable File

#!/usr/bin/env node
const os = require('os');
const { spawn } = require('child_process');
// Checking if node_modules directory exists
const fs = require('fs');
const path = require('path');
if (!fs.existsSync(path.join(process.cwd(), 'node_modules'))) {
spawn('npm', ['i'], { stdio: 'inherit' });
}
// Getting the total system memory
const totalMemory = os.totalmem();
// Allocating 90% of the total memory
const memoryAllocation = Math.floor((totalMemory / (1024 * 1024)) * 0.8); // Converted bytes to MB and took 90% of it
console.log(`Index can use up to: ${memoryAllocation}MB RAM`);
// Running the application
spawn('node', [`--max-old-space-size=${memoryAllocation}`, 'src/app.js'], { stdio: 'inherit' });