sql >> Database teknologi >  >> NoSQL >> Redis

Hvordan knytter man egenskaber til socket.io-objekt i Redis Store?

Ja, hvis du vil indlæse balance socket.io-servere, bliver du nødt til at bruge en butik som redisstore.

Men nu bør du ikke bruge "socket_name_array" + hændelser for at vedligeholde data konsistente på tværs af din server.

Opsætning

var redis = require('redis'),
var pub = redis.createClient(port, host),
var sub = redis.createClient(port, host),
var client = redis.createClient(port, host);

io.configure(function(){
    io.set('store', new RedisStore({
        redisPub: pub,
        redisSub : sub,
        redisClient : client
    }));
});

Brug

io.sockets.on('connection', function (socket) {
  var name = generate_random_name();
  socket.set('name', name); // store it in redis and forward this to other socket.io servers

  // On another server, if you want to retrieve this value from this socket just do:
  socket.get('name', function(err, name){
    // don't forget err. handling
    console.log(name);
  });

});



  1. MongoDB $pull array 2 niveau

  2. Annuller job i Laravel

  3. JedisPoolConfig kan ikke tildeles til GenericObjectPoolConfig

  4. Spring Session Data Redis - Få gyldige sessioner, nuværende bruger fra Redis Store