Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Redis хранилище
 
 автор: oli   (01.02.2014 в 16:49)   письмо автору
 
 

Нужен совет как хранить историю переписки в Redis.
Сейчас не могу определиться в структуре хранения и в каком типе.

Думаю, что хранить список диалогов(только ID) в типе SET, когда ключ списка(ID пользователя) содержит значения ID других пользователей, с кем был диалог.

В Redis это выглядит так:

SADD user.conversation : 145 "1"
SADD user.conversation : 145 "2"
SADD user.conversation : 145 "3"


Это означает, что пользователь с ID = 145 общался с пользователям 1,2,3.
Вроде как все хорошо..

Далее создаю еще одно хранилище в редиске: user.dialog
В него хочу писать все сообщения, отправленные пользователями.
В качестве ключа использовать
hash(ID_мой + ID_c кем переписка)
, а в качестве значения использовать JSON в формете:
{time: 123457891, message: 'HI!', 'from' : '1', 'to' : '145', read : 1}


Но, тут вопрос - правильно ли выбран тип SET для хранения текста переписки?
Удобно ли будет потом с ним работать, сортировка, выборка с лимитом?
Правильная ли вообще концепция?

PS: категорией ошибся..извиняюсь

  Ответить  
 
 автор: OLi   (03.02.2014 в 20:49)   письмо автору
 
   для: oli   (01.02.2014 в 16:49)
 

Решение нашел. Кому будет интересно - поделюсь

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования