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

Форум MySQL

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

 

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

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

тема: Структура таблицы для обмена мгновенными сообщениями
 
 автор: lgar   (15.01.2014 в 20:00)   письмо автору
 
 

Что-то не пойму как реализуют такой функционал, точнее выбор таблицы.

Далеко уходить не буду, вот возьмем диалоговые окна в соц. сети ВК, там 1 пользователь может написать второму, второй первому.

Но у них явно структура таблицы не такая:

id_from_user | id_rcpt_user | id_msg (*)


Так как это разрастётся, станет так медленно работать, другое дело, может они делают не одну таблицу, а много таблиц, например.

table_ id_from_user_ id_rcpt_user


В нее суют структуру (*)

А может делают сессии, которые являются отдельными таблицами?

Например.

id_from_user | id_rcpt_user | id_sess


id_sess_table

id_from_user | id_rcpt_user | msg

  Ответить  
 
 автор: Sfinks   (15.01.2014 в 22:50)   письмо автору
 
   для: lgar   (15.01.2014 в 20:00)
 

> Так как это разрастётся, станет так медленно работать,
Во-первых - это зависит от типа таблиц, ключей и т.п. Скажем MyISAM очень чувствительна к размеру таблицы, а InnoDB - нет. Ключи также очень помогают быстрому поиску.
Во вторых - есть масштабирование.... Т.е. можно разбить запросы к разным таблицам, например, по диапазону ID пользователей.
В третьих - это решается кластерными наращиваниями мощностей. Т.е. на обработку запроса кидается сразу, скажем, 500 серверов.

Структура данных, скорее всего, точно такая же. Вопрос в подходе к ее реализации.

  Ответить  
 
 автор: Enter   (17.01.2014 в 02:02)   письмо автору
 
   для: lgar   (15.01.2014 в 20:00)
 

а зачем использовать mysql для решения подобных задач? все делают это с помощью nosql баз данных. Проще, удобнее, быстрее.

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

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