/*
This example shows synchronous execution, blocking code.
console.log(contents); blocks process and that's why
console.log('Do something else!'); must wait
Max file that didn't crash nodeJS had 350MB
*/
//load modules
var fs = require('fs');
//synchronous file reading
var content = fs.readFile('./testfiles/largefile350mb.txt', 'utf8');
console.log(content); //returns 'undefined' because readFile requires callback and dont return any value
//here process is blocked while file is not read completely. After that next console.log(); continue
console.log('Do something else!');
/*
Conclusion: Due to asynchronous execution, first is file dumped then appear 'Do something else'.
That's because console.log('Do something else!'); waits fs.readFileSync('largefile350mb.txt', 'utf8'); to be finished.
*/
$ps -aux | grep node (list all node processes) sasa 1194 0.5 0.5 1304492 83812 ? Ssl Oct24 256:54 node /home/sasa/.pm2/modules/pm2-logrotate/node_modules/pm2-logr sasa 1200 0.9 0.8 11722608 139596 ? Ssl Oct24 452:46 node /home/sasa/dex8/dex8-api/starter.js sasa 1207 0.4 0.4 1299516 67708 ? Ssl Oct24 209:44 node /home/sasa/regoch/regoch-www/server sasa 1208 0.3 0.4 1304912 72424 ? Ssl Oct24 183:54 node /home/sasa/dex8/dex8-panel/server/index.js sasa 1224 0.9 0.6 11813976 99844 ? Ssl Oct24 445:51 node /home/sasa/dex8/dex8-www/server/index.js sasa 1236 0.5 0.5 11809804 97644 ? Ssl Oct24 281:15 node /home/sasa/mikosoft_hr/www-mikosoft-hr/server/index.js sasa 1255 0.7 0.5 1330604 83380 ? Ssl Oct24 374:34 node /home/sasa/mikosoft-info/api-mikosoft-info/starter.js sasa 1257 0.3 0.4 1300548 69368 ? Ssl Oct24 186:52 node /home/sasa/mikosoft-info/www-mikosoft-info/server/index.js sasa 1289 0.3 0.4 1297580 66904 ? Ssl Oct24 184:20 node /home/sasa/dex8/dex8-kiosk/server/index.js sasa 1363 3.1 2.8 12166964 468120 ? Ssl Oct24 1540:07 node /home/sasa/voovuu/voovuu-pub/server/index.js sasa 1449 0.3 0.3 1167592 65248 ? Ssl Oct24 193:10 node /home/sasa/dex8/dex8-worker/starter.js sasa 1528 1.7 2.7 33139432 449460 ? Ssl Oct24 870:10 node /home/sasa/dex8/dex8-worker/starter.js sasa 1529 0.3 0.3 1099876 63656 ? Ssl Oct24 193:03 node /home/sasa/dex8/dex8-worker/starter.js sasa 1606 0.3 0.3 1099364 63140 ? Ssl Oct24 193:04 node /home/sasa/dex8/dex8-worker/starter.js sasa 1607 0.3 0.3 1100132 64616 ? Ssl Oct24 192:34 node /home/sasa/dex8/dex8-worker/starter.js sasa 1705 0.3 0.3 1100136 64632 ? Ssl Oct24 192:23 node /home/sasa/dex8/dex8-worker/starter.js sasa 1706 0.3 0.3 1100132 64044 ? Ssl Oct24 192:25 node /home/sasa/dex8/dex8-worker/starter.js sasa 1805 0.3 0.3 1100384 65060 ? Ssl Oct24 192:34 node /home/sasa/dex8/dex8-worker/starter.js sasa 1807 0.3 0.3 1100128 64128 ? Ssl Oct24 188:38 node /home/sasa/dex8/dex8-worker/starter.js sasa 1885 0.3 0.3 1099880 64240 ? Ssl Oct24 190:00 node /home/sasa/dex8/dex8-worker/starter.js sasa 1886 1.6 0.9 11856116 157548 ? Ssl Oct24 792:19 node /home/sasa/mikosoft-info/crypto-mikosoft-info/server/index. sasa 2628167 0.8 0.7 1168848 124288 ? Ssl Nov04 275:10 node /home/sasa/voovuu/voovuu-api/starter.js sasa 3168557 0.6 0.6 11824076 110844 ? Ssl Nov06 193:57 node /home/sasa/mikosoft-info/dodo-mikosoft-info/server/index.js sasa 3169051 0.4 0.5 11798408 83016 ? Ssl Nov06 126:53 node /home/sasa/@mikosoft/dodo-examples/server/index.js www-data 3303644 0.0 0.0 2608 600 ? S 07:43 0:00 sh -c ps -aux | grep node www-data 3303646 0.0 0.0 3304 652 ? S 07:43 0:00 grep node