2016-08-13 4 views
0

Я начинаю с nodejs + expressjs. Интересно, где все эти переменные будут сохранены, если я создал его на сервере?Где nodejs хранит свои переменные?

Например, я объявляю этот объект и добавляю к нему элемент. Так что этот объект будет больше. Он все еще жив, если веб-сервер все еще работает.

var http = require("http"); 
var abc = {} 

function start() { 
    function onRequest(request,response) { 
     console.log("request received") 
     response.writeHead(200,{"Content-Type":"text/plain"}) 
     var id = (Math.random() * 100000) | 0 
     abc[id.toString()] = 1 
     response.write(Object.keys(abc).length.toString()); 
     response.end(); 
    } 
    http.createServer(onRequest).listen(8888) 
    console.log("Server has started") 
} 

exports.start = start 

Посмотрите на abc объект, он будет иметь еще один элемент, если вы обновите браузер.

Так как nodejs хранит эти переменные?

+0

В памяти? Где какой-нибудь код хранит переменные? –

+0

Итак, если я не справляюсь с хорошим, сервер может выйти из памяти? – TomSawyer

+0

Уверен, но ... Тебе придется работать над этим. Это как любой код в любом месте - вы всегда можете исчерпать память (или уничтожить виртуальную память, пока производительность не будет ужасной). –

ответ

0

Переменные сохраняются в самой памяти. Если сервер почему-то останавливается. Все переменные данные, присутствующие в памяти, теряются. Если вы хотите сохранить эти данные. Лучше сохраните его в некоторой базе данных.