ホームページ >ウェブフロントエンド >jsチュートリアル >nodejsのmemcacheの例の読み取りshared_javascriptスキル

nodejsのmemcacheの例の読み取りshared_javascriptスキル

WBOY
WBOYオリジナル
2016-05-16 17:05:421038ブラウズ

コードをコピー コードは次のとおりです:

var memcache = require('memcache')
, http = require('http')
, url = require('url')
, qs = require('querystring' )
, memsettings = { port: 2000, host: '10.6.0.6' }
, httpsettings = { port: 3000 }
, cacheObject = {}
, httpserver
, client
, requestHandler;

client = new memcache.Client(memsettings.port, memsettings.host);
//...
client.on('connect', function(){
client.connected = true;
});

client.on('close', function(){
// 引数なし - 接続は閉じられています
クライアント。 Connected = false;
});

function getData(key, Wrapper, res){
client.get(key, function(error, result){
//コールバックには 2 つの引数があります。
// 'result' には良くないものが含まれている可能性がありますが、
// 'NOT_STORED' のような実際のエラーではありません
if(!error){
if(result){
cacheObject[key] = result;
res.write(wrapper '(' result ')');
else {
res.write('データなし') ;
}
res.end();
}
});
/*if(cacheObject[key]){
応答.write(キャッシュオブジェクト[キー]);
response.end();
} else {
client.get(key, function(error, result){

// すべてのコールバックには 2 つの引数があります。
// 'result' には良くないものが含まれている可能性がありますが、
// 'NOT_STORED' など実際にはエラーではありません
if(!error){
cacheObject[key] = result;
cacheObject[key]['timeoutId'] = setTimeout(function(){
client.get(key, function(error, result){
if(!error){
cacheObject[キー] = result;
}
});
});
response.write(result);
response.end();
}
});
}*/
}

httpserver = http.createServer(function(req, res){
var urlObj, queryObj;
urlObj = url.parse(req.url);
res.writeHead(200, {"Content-Type":"text/javascript; charset=utf-8"});
queryObj = qs.parse(urlObj.query);
path = queryObj.pathname;
if(queryObj .gid){
getData(queryObj.gid, queryObj.callback||'callback', res);
} else {
res.write('no input');
res.end ();
}
/*
switch(urlObj.pathname){
case '/pai':
res.write(urlObj.pathname);
break;
case '/qiang':
res.write(urlObj.pathname);
break;
default:
res.write('default');
休憩;
}
res.end();
*/
});

client.connect();
httpserver.listen(httpsettings.port);
console.log ('http サーバーは httpsettings.port をリッスンしています);
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。