redis的nodejs客户端ioredis初识

本文涉及的产品
云数据库 Tair(兼容Redis),内存型 2GB
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
简介:  转载请注明出处哈:http://carlosfu.iteye.com/blog/2240426    声明: 我是java程序员,对node不是很熟悉,只是写书的需要,要了解一下redis的node客户端,欢迎拍砖。


转载请注明出处哈


 

声明:

我是java程序员,对node不是很熟悉,只是写书的需要,要了解一下redis的node客户端,欢迎拍砖。

   

一、redis的nodejs客户端

  去redis的官网看了一下http://redis.io/clients#node,node的客户端如下:

 有两个node.js的redis类库是有星的,一个是ioredis,另一个是node_redis

  1. ioredis是国内开发者:子骅luin,<>作者开发的,这个版本的客户端功能比较丰富,支持redis-standalone,redis-sentinel, redis-cluster等。

 官网地址:https://github.com/luin/ioredis

  2. node_redis发布时间比较早,社区比较活跃,也比较稳定。但是不支持redis-cluster

 官网地址:https://github.com/NodeRedis/node_redis

 

  所以我们以ioredis为例子作为说明。

 

 

二、安装node.js

1. 前提:

gcc and g++ 4.8 or newer
clang and clang++ 3.4 or newer
Python 2.6 or 2.7
GNU Make 3.81 or newer
yum install gcc-c++ openssl-devel  

 

 2. 安装:

wget https://nodejs.org/dist/v0.12.4/node-v0.12.4.tar.gz --no-check-certificate
tar -xvf node-v0.12.4.tar.gz
cd node-v0.12.4
./configure
make 
make install

 

3. 验证:

node -v
#v0.12.4

 

 

三、安装ioredis:

npm install ioredis

 

四、客户端测试:

 

1. ioredis连接单机:

var Redis = require('ioredis');
var redis = new Redis(6379, '127.0.0.1');

redis.set('hello', 'node-redis');
redis.get('hello', function (err, result) {
  console.log(result);
});

  输出:

node-redis

 

2. ioredis连接redis-sentinel:

var Redis = require('ioredis');
var redis = new Redis({
  sentinels: [{ host: 'ip1', port: 26379 }, { host: 'ip2', port: 26380 }, { host: 'ip3', port: 26381 }],
  name: 'mymaster'
});

redis.set('node-sentinel', 'node-sentinel-value');
redis.get('node-sentinel', function (err, result) {
  console.log(result);
});

  输出:

node-sentinel-value

   

3. ioredis连接redis-cluster:

var Redis = require('ioredis');
var cluster = new Redis.Cluster(
[
{
  port: port1,
  host: 'ip1'
},
{
  port: port2,
  host: 'ip2'
},
{
  port: port3,
  host: 'ip3'
},
{
  port: port4,
  host: 'ip4'
},
{
  port: port5,
  host: 'ip5'
},
{
  port: port6,
  host: 'ip6'
}
]);

cluster.set('node-cluster', 'node-cluster-value');
cluster.get('node-cluster', function (err, res) {
    console.info(res);
});

   输出:

node-cluster-value

   

 

 

 

 

 

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore &nbsp; &nbsp; ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库&nbsp;ECS 实例和一台目标数据库&nbsp;RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&amp;RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
2月前
|
NoSQL Redis 数据安全/隐私保护
Redis 最流行的图形化界面下载及使用超详细教程(带安装包)! redis windows客户端下载
文章提供了Redis最流行的图形化界面工具Another Redis Desktop Manager的下载及使用教程,包括如何下载、解压、连接Redis服务器以及使用控制台和查看数据类型详细信息。
158 6
Redis 最流行的图形化界面下载及使用超详细教程(带安装包)! redis windows客户端下载
|
2月前
|
NoSQL Redis 数据库
Redis 图形化界面下载及使用超详细教程(带安装包)! redis windows下客户端下载
文章提供了Redis图形化界面工具的下载及使用教程,包括如何连接本地Redis服务器、操作键值对、查看日志和使用命令行等功能。
155 0
Redis 图形化界面下载及使用超详细教程(带安装包)! redis windows下客户端下载
|
4月前
|
缓存 NoSQL Redis
【Azure Redis 缓存】Redission客户端连接Azure:客户端出现 Unable to send PING command over channel
【Azure Redis 缓存】Redission客户端连接Azure:客户端出现 Unable to send PING command over channel
197 3
|
1月前
|
开发框架 JavaScript 前端开发
Node.js日记:客户端和服务端介绍、Node.js介绍
Node.js日记:客户端和服务端介绍、Node.js介绍
|
2月前
|
NoSQL 网络协议 算法
Redis 客户端连接
10月更文挑战第21天
34 1
|
2月前
|
存储 消息中间件 NoSQL
Redis 入门 - C#.NET Core客户端库六种选择
Redis 入门 - C#.NET Core客户端库六种选择
66 8
|
3月前
|
JSON NoSQL Java
redis的java客户端的使用(Jedis、SpringDataRedis、SpringBoot整合redis、redisTemplate序列化及stringRedisTemplate序列化)
这篇文章介绍了在Java中使用Redis客户端的几种方法,包括Jedis、SpringDataRedis和SpringBoot整合Redis的操作。文章详细解释了Jedis的基本使用步骤,Jedis连接池的创建和使用,以及在SpringBoot项目中如何配置和使用RedisTemplate和StringRedisTemplate。此外,还探讨了RedisTemplate序列化的两种实践方案,包括默认的JDK序列化和自定义的JSON序列化,以及StringRedisTemplate的使用,它要求键和值都必须是String类型。
redis的java客户端的使用(Jedis、SpringDataRedis、SpringBoot整合redis、redisTemplate序列化及stringRedisTemplate序列化)
|
4月前
|
NoSQL 网络协议 Linux
【AKS+Redis】AKS中客户端(ioredis)遇见Azure Redis服务Failover后链接中断的可能性
【AKS+Redis】AKS中客户端(ioredis)遇见Azure Redis服务Failover后链接中断的可能性
|
4月前
|
NoSQL 网络协议 Linux
【Azure Redis】Lettuce客户端遇见连接Azure Redis长达15分钟的超时
【Azure Redis】Lettuce客户端遇见连接Azure Redis长达15分钟的超时
|
4月前
|
NoSQL 网络协议 Linux
【Azure Redis】Redis客户端出现15分钟的超时异常
【Azure Redis】Redis客户端出现15分钟的超时异常