2016-08-13 108 views
0

我以nodejs + expressjs開頭。我想知道如果我在服務器上創建了所有這些變量,它們將被存儲在哪裏?nodejs在哪裏存儲變量?

例如,我聲明這個對象,我添加元素。所以這個對象會變得更大。 如果web服務器仍在運行,它仍然活着。

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

變量存儲在內存中。如果服務器由於某種原因而停止。內存中的所有可變數據都會丟失。如果你想保留這些數據。最好將其保存到某個數據庫中。