nodejs cache 緩存機制的簡單實現


近日看了一下nodejs 感覺還不錯,又試了一下連接MYSQL,感覺也挺好的。

但nodejs 好像沒有一個很好的緩存機制。機器又沒裝mamecached

最后一想JS可以自己實現一個試試,代碼很爛,不要噴我啊。

下面我把我用到的緩存代碼貼下,感覺哪里可以改善,可以給我流言。

下面是整體代碼,由於很簡單,所以就簡單寫點說明

var __cache={};//用來存放緩存的全局變量。
exports.cache=(function(){
var o=new Object();
/**
* 添加一個新緩存
* @param cachename 緩存名
* @param value 緩存值
* @param haomiao 緩存時間 毫秒如果不加時間默認1分鍾。
*/
o.addCache=function(cachename,value,haomiao){
var haom=haomiao?haomiao:60000;
var tcache=cachename;
__cache[tcache]=value;
setTimeout(function(){ //使用TIMEOUT來處理超時時的刪除。
delete __cache[tcache];
},haom)
}
o.getCache=function(cachename)
{
return __cache[cachename];
}
/**
* 刪除緩存
* @param cachename 刪除的緩存名稱
*/
o.delCache=function(cachename)
{
delete __cache[cachename];
}
//console.log(o);
return o;
})();

 

代碼很簡單吧。那你一定會想,“小哥,這么簡單的代碼好不好用呢”。實話告訴你,好用,很好用。

 

使用方法

var cache =require("./cache").cache;//引用cache. 這里你寫成你自己的引用地址。

var s=cache.getCache("我的cachekey");

if(s)//判斷緩存是否存在

{console.log(s);}//存在就輸出。

else{cache.addCache("我的cachekey","緩存的內容",60*1000)}//不存在就緩存1分鍾

到這就結束了。是不是很簡單呢,你是不是想馬上試試呢,快來行動吧。

這是我的博客地址,本文可以轉載,但轉載時請保留我的地址,畢竟都是自己努力寫的。謝謝了。

http://www.cnblogs.com/webs/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM