Хотите хранить в Redis через Node.js

Я хочу хранить хеш-данные / данные JSON пользователей в Redis и хочу добавить пользователь в users хэширует пользовательские данные следующим образом.

Например, users = {};

Когда пользователь rahul входит в систему, users станет.

users = {
    rahul: {
        username: 'rahul',          
    }
}

И когда пользователь namita войдет в систему, тогда

users = {
    rahul: {
        username: 'rahul',

    },
    namita: {
        username: 'namita',

    }
}

Какой будет код для этого в Redis?

Как мне инициализировать ключ users и добавить к нему rahul?

Какую функцию мне нужно использовать вне этого набора, hset и т. Д.?

И как мне получить данные users['rahul'] через Redis?


person XMen    schedule 01.06.2011    source источник


Ответы (1)


Вероятно, наиболее оптимальным решением для хранения одного хэша / json было бы использование команд хешей. У меня также была эта «дилемма», и есть несколько questions относительно структуры данных, содержащей пользователей с объектами, подобными JSON, в Redis.

ИЗМЕНИТЬ

Используйте модуль node_redis. Он активно поддерживается профессионалом, вероятно, наиболее часто используемым драйвером node.js для Redis. Сначала вы должны использовать команду SADD, чтобы добавить новое имя объекта JSON в набор, чтобы отслеживать, какие элементы "пользователи" содержат. Затем используйте HMSET для хранения хэшей пары "ключ-значение" объекта "user: rahul". Пример:

// add first user
client.sadd("users", "user:rahul");
client.hmset("user:rahul", "username", "rahul", "foo", "bar");

// add second user
client.sadd("users", "user:namita");
client.hmset("user:namita", "username", "namita", "foo", "baz");

Теперь вы можете получить доступ к своим пользователям с помощью различных типов команды redis hash в зависимости от того, хотите ли вы получить только определенный хэш значения или весь однопользовательский объект. Чтобы получить всех пользователей, вы можете, например, использовать команду SMEMBERS. Попробуйте посмотреть readme и примеры, где можно найти дополнительную информацию о его API.

person yojimbo87    schedule 01.06.2011
comment
напишите пример кода, я ответил на вопрос, который они предлагают после пользователей, но сначала, как объявить хэш пользователя? или я планирую использовать redissql, это хорошо? - person XMen; 01.06.2011