nodejs redis 订阅/发布消息

nodejs redis 订阅/发布消息

api说明

redis.createClient(redisConfig) 创建订阅者/发布者

subscriber.subscribe(‘channel1’) 订阅者订阅频道

publisher.publish(‘channel1’, ‘msg’) 发布者发送消息到知道频道

subscriber.unsubscribe(‘channel1’) 订阅者取消订阅频道

quit() 订阅者/发布者关闭redis连接

example

const redis = require("redis");
// redis配置
const redisConfig = {
    
    
  'url': `redis://requirepass:[email protected]:6379`
}
// 创建订阅者
const subscriber = redis.createClient(redisConfig);
// 创建发布者
const publisher = redis.createClient(redisConfig);
// 订阅者监听消息
subscriber.on("message", function(channel, message) {
    
    
  console.log(`Sub received message in ${
      
      channel}: ${
      
      message}`);
});
// 订阅者订阅频道
subscriber.subscribe("channel1");
subscriber.subscribe("channel2");

let count = 0

let interval = setInterval(() => {
    
    
  count ++
  // 发布者发布消息
  publisher.publish('channel1', `${
      
      count}`);
  publisher.publish('channel2', `${
      
      count}`);
  if (count >= 10) {
    
    
    clearInterval(interval)
    // 订阅者取消订阅
    subscriber.unsubscribe("channel1")
    subscriber.unsubscribe("channel2")
    // 订阅者/发布者关闭redis连接
    subscriber.quit()
    publisher.quit()
  }
}, 1000)

猜你喜欢

转载自blog.csdn.net/BDawn/article/details/113353118