Skip to content

xibang/node-redis

Repository files navigation

Xibang Redis

github npm npm codecov codebeat badge Build Status

安装

yarn add @xibang/redis

ES7 使用

const redis = require('@xibang/redis');

const client = redis({
  host: '127.0.0.1',
  port: 6379,
  db: 0
});

(async()=>{
  // 直接用默认的数据库
  console.log(await client.get('test'));

  // 或者选择数据库
  const db1 = client.select(1);
  console.log(await db1.get('test'));
})();

注意:

(async()=>{
  // Select DB将会返回实例
  client.select(1);
  // 这里依然用的默认的 db(可能是db0,根据配置,默认0)进行操作
  console.log(await client.get('test'));
})();

Subscribe / Publish

const redis = require('@xibang/redis');

// 需要不同的配置以保证连接不被复用。
const sub = redis({ test: 1 }).client;
const pub = redis({ test: 2 }).client;

let msgCount = 0;

sub.on('subscribe', () => {
  pub.publish('a nice channel', 'I am sending a message.');
  pub.publish('a nice channel', 'I am sending a second message.');
  pub.publish('a nice channel', 'I am sending my last message.');
});

sub.on('message', (channel, message) => {
  console.log(`sub channel ${channel}: ${message}`);
  msgCount += 1;
  if (msgCount === 3) {
    sub.unsubscribe();
    sub.quit();
    pub.quit();
  }
});

sub.subscribe('a nice channel');

License

Apache 2.0

通过支付宝捐赠:

qr