手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >nodejs读取memcache示例分享
nodejs读取memcache示例分享
摘要:复制代码代码如下:varmemcache=require('memcache'),http=require('http'),url=requ...

复制代码 代码如下:

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(){

// no arguments - connection has been closed

client.connected = false;

});

function getData(key, wrapper, res){

client.get(key, function(error, result){

// all of the callbacks have two arguments.

// 'result' may contain things which aren't great, but

// aren't really errors, like 'NOT_STORED'

if(!error){

if(result){

cacheObject[key] = result;

res.write( wrapper + '(' + result + ')');

} else {

res.write('no data');

}

res.end();

}

});

/*if(cacheObject[key]){

response.write(cacheObject[key]);

response.end();

} else {

client.get(key, function(error, result){

// all of the callbacks have two arguments.

// 'result' may contain things which aren't great, but

// aren't really errors, like 'NOT_STORED'

if(!error){

cacheObject[key] = result;

cacheObject[key]['timeoutId'] = setTimeout(function(){

client.get(key, function(error, result){

if(!error){

cacheObject[key] = 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');

break;

}

res.end();

*/

});

client.connect();

httpserver.listen(httpsettings.port);

console.log('http server listening on ' + httpsettings.port);

【nodejs读取memcache示例分享】相关文章:

javascript事件冒泡实例分析

Javascript节点关系实例分析

仿DVBBS下拉菜单效果 jb51修正无错

一个表格收缩展开的函数

记录几个node.js错误及解决方案

JavaScript的正则表达式中test()方法的使用

如何制作浮动广告

nodejs实现获取某宝商品分类

javascript常用的方法分享

JS中的Replace方法使用经验分享

精品推荐
分类导航