Redis
 sql >> Baza danych >  >> NoSQL >> Redis

Jak powiązać właściwości z obiektem socket.io w sklepie Redis?

Tak, jeśli chcesz równoważyć obciążenie serwerów socket.io, będziesz musiał użyć sklepu takiego jak redisstore.

Jednak teraz nie powinieneś używać "socket_name_array" + zdarzeń, aby zachować spójność danych na całym serwerze.

Konfiguracja

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
    }));
});

Użycie

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. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Stackexchange.redis nie obsługuje funkcji CZEKAJ

  2. Jak prawidłowo korzystać z pul połączeń w redis?

  3. Integracja bibliotek Flask-Mail i Redis Queue daje błąd

  4. kłopoty z ustawieniem backendu zadań selerowych w Pythonie

  5. Nie można połączyć się z serwerem redis z kontenera docker