ioredis 是一个用于 Node.js/io.js 的 Redis 客户端,强健、功能强大且全面。
要求 Redis >= 2.6.12 ,Node.js >= 0.10.16)
具有以下特性
功能完备。支持 Cluster, Sentinel, Pipelining,以及 Lua scripting & Pub/Sub(同时支持二进制消息)
高性能
友好的 API,支持使用 Node callbacks 以及 Bluebird promises
抽象 Lua 脚本,可定义自定义命令
支持二进制数据
支持 TLS
支持离线队列和准备检查
支持 ES6 类型,例如 Map and Set
支持 GEO 命令(Redis 3.2 Unstable)
完善的错误处理策略
示例代码 - 基本用法
var Redis = require('ioredis'); var redis = new Redis(); redis.set('foo', 'bar'); redis.get('foo', function (err, result) { console.log(result); }); // Or using a promise if the last argument isn't a function redis.get('foo').then(function (result) { console.log(result); }); // Arguments to commands are flattened, so the following are the same: redis.sadd('set', 1, 3, 5, 7); redis.sadd('set', [1, 3, 5, 7]); // All arguments are passed directly to the redis server: redis.set('key', 100, 'EX', 10);