/*
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 1303844 83336 ? Ssl Oct24 184:24 node /home/sasa/.pm2/modules/pm2-logrotate/node_modules/pm2-logr sasa 1200 0.9 0.8 11721912 137504 ? Ssl Oct24 315:43 node /home/sasa/dex8/dex8-api/starter.js sasa 1207 0.4 0.4 1305072 73556 ? Ssl Oct24 145:35 node /home/sasa/regoch/regoch-www/server sasa 1208 0.4 0.4 1304912 72676 ? Ssl Oct24 132:05 node /home/sasa/dex8/dex8-panel/server/index.js sasa 1224 1.0 0.6 11825444 104308 ? Ssl Oct24 330:47 node /home/sasa/dex8/dex8-www/server/index.js sasa 1236 0.6 0.5 11813132 97556 ? Ssl Oct24 199:48 node /home/sasa/mikosoft_hr/www-mikosoft-hr/server/index.js sasa 1255 0.7 0.5 1329104 81924 ? Ssl Oct24 258:11 node /home/sasa/mikosoft-info/api-mikosoft-info/starter.js sasa 1257 0.4 0.4 1300740 70064 ? Ssl Oct24 134:01 node /home/sasa/mikosoft-info/www-mikosoft-info/server/index.js sasa 1289 0.4 0.4 1297184 65784 ? Ssl Oct24 132:21 node /home/sasa/dex8/dex8-kiosk/server/index.js sasa 1363 3.1 2.7 12169076 445568 ? Ssl Oct24 1031:28 node /home/sasa/voovuu/voovuu-pub/server/index.js sasa 1449 0.4 0.4 1168872 67432 ? Ssl Oct24 138:48 node /home/sasa/dex8/dex8-worker/starter.js sasa 1528 1.7 2.6 22607304 430296 ? Ssl Oct24 564:58 node /home/sasa/dex8/dex8-worker/starter.js sasa 1529 0.4 0.3 1100644 64656 ? Ssl Oct24 138:43 node /home/sasa/dex8/dex8-worker/starter.js sasa 1606 0.4 0.3 1100644 64452 ? Ssl Oct24 138:49 node /home/sasa/dex8/dex8-worker/starter.js sasa 1607 0.4 0.3 1100900 64812 ? Ssl Oct24 138:21 node /home/sasa/dex8/dex8-worker/starter.js sasa 1705 0.4 0.4 1100904 66308 ? Ssl Oct24 137:59 node /home/sasa/dex8/dex8-worker/starter.js sasa 1706 0.4 0.3 1100900 65500 ? Ssl Oct24 138:17 node /home/sasa/dex8/dex8-worker/starter.js sasa 1805 0.4 0.3 1100640 65488 ? Ssl Oct24 138:19 node /home/sasa/dex8/dex8-worker/starter.js sasa 1807 0.4 0.3 1100128 63844 ? Ssl Oct24 135:27 node /home/sasa/dex8/dex8-worker/starter.js sasa 1885 0.4 0.3 1099112 63816 ? Ssl Oct24 136:05 node /home/sasa/dex8/dex8-worker/starter.js sasa 1886 1.4 0.8 11841760 144008 ? Ssl Oct24 476:10 node /home/sasa/mikosoft-info/crypto-mikosoft-info/server/index. www-data 438677 0.0 0.0 2608 536 ? S 07:14 0:00 sh -c ps -aux | grep node www-data 438679 0.0 0.0 3304 656 ? S 07:14 0:00 grep node sasa 2628167 0.9 0.7 1161268 116396 ? Ssl Nov04 156:56 node /home/sasa/voovuu/voovuu-api/starter.js sasa 3168557 0.7 0.5 11819684 93248 ? Ssl Nov06 98:44 node /home/sasa/mikosoft-info/dodo-mikosoft-info/server/index.js sasa 3169051 0.4 0.5 11798408 83188 ? Ssl Nov06 67:13 node /home/sasa/@mikosoft/dodo-examples/server/index.js