在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
开源软件名称:thunk-redis开源软件地址:https://gitee.com/zensh/thunk-redis开源软件介绍:thunk-redisA redis client with pipelining, rely on thunks, support promise. thunksDemo(examples)default thunk API: var redis = require('thunk-redis');var client = redis.createClient({ database: 0});client.on('connect', function() { console.log('redis connected!');});client.info('server')(function(error, res) { console.log('redis server info:', res); return this.dbsize();})(function(error, res) { console.log('surrent database size:', res); return this.select(0);})(function(error, res) { console.log('select database 0:', res); return this.quit();})(function(error, res) { console.log('redis client quit:', res);}); use promise API: var redis = require('thunk-redis');var client = redis.createClient({ database: 1, usePromise: true});client.on('connect', function() { console.log('redis connected!');});client .info('server') .then(function(res) { console.log('redis server info:', res); return client.dbsize(); }) .then(function(res) { console.log('surrent database size:', res); return client.select(0); }) .then(function(res) { console.log('select database 0:', res); return client.quit(); }) .then(function(res) { console.log('redis client quit:', res); }); support generator in thunk API: var redis = require('thunk-redis');var client = redis.createClient();client.select(1)(function*(error, res) { console.log(error, res); yield this.set('foo', 'bar'); yield this.set('bar', 'baz'); console.log('foo -> %s', yield this.get('foo')); console.log('bar -> %s', yield this.get('bar')); var user = { id: 'u001', name: 'jay', age: 24 }; // transaction, it is different from node_redis! yield [ this.multi(), this.set(user.id, JSON.stringify(user)), this.zadd('userAge', user.age, user.id), this.pfadd('ageLog', user.age), this.exec() ]; return this.quit();})(function(error, res) { console.log(error, res);}); Benchmark➜ thunk-redis git:(master) ✗ node --harmony benchmark/index.jsredis(N):node_redisOKredis(T):thunk-redisOKStart...redis(N): PING 49358 ops/sec 100%redis(T): PING 54495 ops/sec 110.4%redis(N): SET small string 39062 ops/sec 100%redis(T): SET small string 44523 ops/sec 114.0%redis(N): GET small string 43859 ops/sec 100%redis(T): GET small string 47687 ops/sec 108.7%redis(N): SET long string 28320 ops/sec 100%redis(T): SET long string 35323 ops/sec 124.7%redis(N): GET long string 30432 ops/sec 100%redis(T): GET long string 26645 ops/sec 87.6%redis(N): INCR 46061 ops/sec 100%redis(T): INCR 48756 ops/sec 105.9%redis(N): LPUSH 39824 ops/sec 100%redis(T): LPUSH 45289 ops/sec 113.7%redis(N): LRANGE 100 8322 ops/sec 100%redis(T): LRANGE 100 10094 ops/sec 121.3% InstallationNode.js: npm install thunk-redis API(More)
redis.logHelper tool, print result or error stack. var client = redis.createClient();client.info()(redis.log); redis.createClientvar client1 = redis.createClient();var client2 = redis.createClient({database: 2});var client3 = redis.createClient(6379, {database: 2});var client4 = redis.createClient(6379, '127.0.0.1', {database: 2});var client5 = redis.createClient('/tmp/redis.sock');var client6 = redis.createClient('/tmp/redis.sock', {database: 2});
|
请发表评论