使用nodejs如何读取memcache的示例程序

 本人主要介绍了使用nodejs如何读取memcache的示例程序,大家参考使用吧

代码如下:
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);
 

时间: 2024-09-11 02:15:05

使用nodejs如何读取memcache的示例程序的相关文章

中文语音识别-LD3320链接51示例程序

问题描述 LD3320链接51示例程序 请问有人玩过用51控制LD3320的吗?本人初次玩,水平有限,求助大家,望助 解决方案 http://download.csdn.net/download/zlm867953489/8007009 解决方案二: http://download.csdn.net/download/zlm867953489/8007009 解决方案三: 源代码,编译时前两个头文件找不到,还有后面怎么会有P4口的? #include"LE52.h" #include

mfc teechart-teechart5 如何显示x轴为时间轴的历史曲线,求示例程序

问题描述 teechart5 如何显示x轴为时间轴的历史曲线,求示例程序 读取Sqlserver数据库,取得数据后在teechart5控件上如何显示x轴为时间轴的历史曲线,尤其是时间轴的显示,求示例程序

基于android示例程序(bitmapfun) 高效加载图片让人无语地方_Android

在android的开发指南上有这样一篇文章,如何更有效率的加载图片,地址为 https://developer.android.com/training/displaying-bitmaps/index.html,这篇文章详细地介绍了如何加载高清图到内存,同时避免系统报OOM的问题,文章写得很不错,示例程序也可以直接运行.在我们项目的一次小版本升级的过程中,我们尝试了使用git上的一个开源项目afinal(bitmapfun的封装版)来加载图片,但是在测试的时候发现了一个问题,新的图片加载器(b

关于ANDROID示例程序(BITMAPFUN)——高效加载图片的坑爹地方

下面的都是费话,不想看的,直接看红色字体,然后自己实验下 在android的开发指南上有这样一篇文章,如何更有效率的加载图片,地址为 https://developer.android.com/training/displaying-bitmaps/index.html,这篇文章详细地介绍了如何加载高清图到内存,同时避免系统报OOM的问题,文章写得很不错,示例程序也可以直接运行.在我们项目的一次小版本升级的过程中,我们尝试了使用git上的一个开源项目afinal(bitmapfun的封装版)来加

《Hadoop MapReduce实战手册》一1.3 写WordCountMapReduce示例程序,打包并使用独立的Hadoop运行它

1.3 写WordCountMapReduce示例程序,打包并使用独立的Hadoop运行它 Hadoop MapReduce实战手册本节传授如何写一个简单的MapReduce程序,以及如何执行它,如图1-1所示. 要运行MapReduce作业,用户需要提供一个map函数.一个reduce函数.输入数据,以及输出数据的位置.在执行时,Hadoop实际执行如下步骤. Hadoop通过换行符将输入数据分解成多个数据项,并且在每一个数据项上运行一次map函数,将这个数据项作为对应map函数的输入.执行完

关于继承内部类——java编程思想示例程序分析

编程|程序|继承|示例 关于继承内部类--java编程思想示例程序分析:class Egg2 { protected class Yolk { public Yolk() { System.out.println("Egg2.Yolk()"); } public void f() { System.out.println("Egg2.Yolk.f()"); } } private Yolk y = new Yolk(); public Egg2() { System

RapidWebDev框架 - 快速开发产品管理示例程序

首先,我们按照以往的思路,先将上一章中的t_product进行一定的扩展,如下图: 开发产品管理示例程序-net快速开发框架">在这里,我增加了一张T_PRODUCT_CATEGORY表,用于存放产品分类信息,分类为树型结构,另外增加了一个T_WAREHOUSE表,用于存放仓库信信息,然后在T_PRODUCT增加了相应的外键和一些扩展字段.有了数据表,就开始分别对分类和仓库建了对应的管理代码(CRUD, UI等),然后在产品页面对其调用.为了节约篇幅,这里就不贴这些代码了,反正是一大堆.

php读取excel文件示例

 这篇文章主要介绍了php读取excel文件示例,还有更新修改功能,需要的朋友可以参考下  代码如下: //模板存放目录 $dir = $DOCUMENT_ROOT.'/backoffice/admin/oemcheck/';   $templateName = '1.xlsx'; $outputFileName = '模板.xlsx'; $txt='test';   //实例化Excel读取类 $PHPReader = new PHPExcel_Reader_Excel2007(); if(!

printf-(c语言)利用%ld读取double类型,程序可以运行,但是结果是很大的负数?

问题描述 (c语言)利用%ld读取double类型,程序可以运行,但是结果是很大的负数? #include #define TAX_1 17850 #define TAX_2 23900 #define TAX_3 29750 #define TAX_4 14875 #define TAXRATE_1 0.15 #define TAXRATE_2 0.28 int main(void) { double taxsalary,taxpay; int n; printf("Please enter