安装

linux安装及配置之前写过了http://www.cnblogs.com/zycbloger/p/6226682.html

windows安装

下载地址:https://github.com/MicrosoftArchive/redis/releases

我下的是zip,解压后

具体的配置和linux一样看那个就行了!

运行

打开一个 cmd 窗口 使用cd命令切换目录到 解压的目录运行

redis-server.exe redis.windows.conf

如果想方便的话,可以把 redis 的路径加到系统的环境变量里或者写个 .bat文件 redis-server redis.windows.conf 双击就可以运行了,这样就省得再输路径了,后面的那个 redis.windows.conf 可以省略,如果省略,会启用默认的。输入之后,会显示如下界面:

另启一个cmd窗口,原来的不要关闭

切换到redis目录下运行

redis-cli.exe -h 127.0.0.1 -p 6000 -a xxx

  • -h: 是指地址127.0.0.1 指的是本地,如果是远程的就写远程的地址
  • -p: 这边是端口号,具体看个人的配置 redis.windows.conf 里面的
  • -a: 密码 同上 没设就不用 写 -a了

ping 如果 pong 就说明是连接通过了

nodejs上的应用

安装 redis 依赖包

npm install redis --save

连接

var redis = require('redis'),
config = require('../config'),
dbConfig = config.redis,
RDS_PORT = dbConfig.port, //端口号
RDS_HOST = dbConfig.host, //服务器IP
RDS_PWD = dbConfig.pass, //密码
RDS_OPTS = {auth_pass: RDS_PWD},
client = redis.createClient(RDS_PORT, RDS_HOST, RDS_OPTS); client.on('ready',function(res){
console.log('ready');
}); client.on('end',function(err){
console.log('end');
}); client.on('error', function (err) {
console.log(err);
}); client.on('connect',function(){
console.log('redis connect success!');
});

基本的使用

字符串

  • set key value 设置key的value
  • get key 得到key的value
  • incr key key如果是整型自增1
  • keys * 得到所有key

结合node 使用

client.set('name', 'zyc', function (err, res) {
// todo..
}); client.get('name', function (err, res) {
// todo...
});

哈希

  • hset key filed value 设置key对象的field属性的value
  • hget key filed 得到key对象的field属性的value
  • hgetall key 得到key对象的所有的属性和值
  • hdel key field 删除
  • hexists key field 判断对象是否存在这个field

client.hmset("hosts", "mjr", "1", "another", "23", "home", "1234");

client.hgetall("hosts", function (err, obj) {
console.dir(obj);
}); client.hmset(key2, {
"0123456789": "abcdefghij", // NOTE: key and value will be coerced to strings
"some manner of key": "a type of value"
});

列表

  • lpush key value [value ...] 向链表key左边添加元素
  • rpush key value [value...] 向链表key右边添加元素
  • lpop key 移除key链表左边第一个元素
  • rpop key 移除key链表右边第一元素
  • lrange key start stop 获取链表中某一段,包含最大值,-1表示最后一个元素

集合类型

  • sadd key member [member ...] 向集合key中添加元素,如果元素已经存在则忽略
  • srem key member [member ...] 从集合key中删除元素
  • smembers key 返回集合key中所有的元素
  • sinter key [key ...] 多个集合执行交集运算
  • sdiff key [key ...] 多个集合执行差集运算
  • sunion key [key ...] 多个集合执行并集运算

有序集合

  • zadd key score member [score member ...] 向有序集合key中加入一个或多个元素和分数,如果元素已经存在,则替换分数
  • zrem key member [member ...] 删除集合中一个或多个元素
  • zrange key start stop [withscores] 按元素分数从小到大顺序返回元素,如需获得对应元素的分数,在尾部加上withscores
  • zrevrange key start stop [withscores] 按元素分数从大到小顺序返回元素

client.zadd(table, score, id, function (err, res) {
}); //删除单个
client.zrem(table, id, function (err, res) { ));
// 删除多个
client.zrem(table, arr, function (err, res) { }); // 从大到小 查询
client.zrevrange(table, 0, -1, function (err, res) { })

https://www.npmjs.com/package/redis 可以去redis看一下相关的资料。

nodejs+redis使用的更多相关文章

  1. nodejs + redis/mysql 连接池问题

    nodejs + redis/mysql 连接池问题 需不需要连接池 连接池的作用主要是较少每次临时建立连接所带来的开销.初步一看,nodejs运行单线程上,它不能同时使用多个连接,乍一看是不需要连接 ...

  2. nodejs redis遇到的一个问题解决

    v ar redis = require("redis"), client = redis.createClient({host:'tc-arch-osp33.tc', port: ...

  3. nodejs redis

    0. install redis library for node npm install redis 1.node command example > var _redis = require ...

  4. 使用NODEJS+REDIS开发一个消息队列以及定时任务处理

    作者:RobanLee 原创文章,转载请注明: 萝卜李 http://www.robanlee.com 源码在这里: https://github.com/robanlee123/RobCron 时间 ...

  5. Ubuntu安装Python2.7,nodejs,Redis

    安装Python2.7 sudo add-apt-repository ppa:fkrull/deadsnakes-python2.7sudo apt-get update sudo apt-get ...

  6. nodejs redis 发布订阅机制封装

    最近项目使用redis,对publish 和 subscribe的使用进行了了解,并进行了封装. var config = require('../config/config'); var log = ...

  7. 如何使用NODEJS+REDIS开发一个消息队列

    作者: RobanLee 原创文章,转载请注明: 萝卜李 http://www.robanlee.com MQ全称为Message Queue, 消息队列(MQ)是一种应用程序对应用程序的通信方法.应 ...

  8. Nodejs Redis 全部操作方法

    安装  npm install redis --save demo var redis = require('redis'); var client = redis.createClient('637 ...

  9. websocket+nodejs+redis实现消息订阅和发布系统

    其实我很懒,不想打字,代码已上传到码云,请点此处. 有疑问请一下扫描二维码,加我微信:

随机推荐

  1. android Butter Knife 使用详解

    Butter Knife github连接:https://github.com/JakeWharton/butterknife 本文使用的butterknife版本7.0.1 butterknife ...

  2. Cloudera Manager安装之利用parcels方式安装3或4节点集群(包含最新稳定版本或指定版本的安装)(添加服务)(CentOS6.5)(五)

    参考博客 Cloudera Manager安装之利用parcels方式安装单节点集群  Cloudera Manager安装之Cloudera Manager 5.3.X安装(三)(tar方式.rpm ...

  3. win7、8上走网络打印机(需找驱动包,不能自动)

    不多说,直接上干货! 简而言之,就是, 第一步是,将电脑与打印机联上网,进行匹配,即连上网可以查找到打印机的型号. 第二步是,安装驱动. D:\Driver\HP LJP2015 PCL6(注意,这个 ...

  4. 分布式处理与大数据平台(RabbitMQ&Celery&Hadoop&Spark&Storm&Elasticsearch)

    热门的消息队列中间件RabbitMQ,分布式任务处理平台Celery,大数据分布式处理的三大重量级武器:Hadoop.Spark.Storm,以及新一代的数据采集和分析引擎Elasticsearch. ...

  5. Ruby on Rails中的Rake教程(Rake如何把我灌醉!)

    下面是我们使用Rake任务的例子: 1.给列表中的用户发送邮件 2.每晚数据的计算和报告 3.过期或重新生成缓存 4.备份数据和svn版本(how's this : subversion reposi ...

  6. Struts2配置文件struts.xml的编辑自动提示代码功能

    第一步:复制struts.xml头部地址 第二步:Window --->Preferences 第三步:XML--->XML Catalog--->Add 第四步:在Key中粘贴复制 ...

  7. chown -R 用户名:组名 ./ 及 chown用法介绍

    当我们在不通过yum(CentOS).apt-get(Ubuntu)来安装MySQL的时候,通常执行以下命令来改变目录的拥有者: [root@localhost ~]# chown -R mysql: ...

  8. Node.js数据流Stream之Readable流和Writable流

    一.前传 Stream在很多语言都会有,当然Node.js也不例外.数据流是可读.可写.或即可读又可写的内存结构.Node.js中主要包括Readable.Writable.Duplex(双工)和Tr ...

  9. [转]React 教程

    本文转自:http://www.runoob.com/react/react-install.html React 可以直接下载使用,下载包中也提供了很多学习的实例. 本教程使用了 React 的版本 ...

  10. 【C#】组件分享:FormDragger窗体拖拽器

    适用:.net2.0+ winform项目 介绍: 类似QQ.迅雷等讲究UI体验的软件,都支持在窗口内多处地方拖动窗口,而不必老实巴交的去顶部标题栏拖,这个组件就是让winform也能这样随性拖拽,随 ...