![]() |
![]() |
Fida 18.05.2004 - 10:05 |
Где хранить и как список моего чата? В чем порекомендуете хранить сообщения в чате? Ну и как-то надо учесть то, чтобы это "хранилище" не грузилось постоянно с сервера, а накапливалось |
Lucifer 1 - 18.05.2004 - 10:31 | ну таки в базе данных |
Fida 2 - 18.05.2004 - 10:49 | и каждые 5 сек, к примеру, загружать всё это дело? Не много ли жраться будет? Хранить в базе данных надо, безусловно. Я имел в виду может это как-то у юзера хранить, чтобы оно там "накапливалось", а не качалось заново? |
Lucifer 3 - 18.05.2004 - 10:51 | Вопрос: А зачем тебе весь текст постоянно подгружать??? |
Fida 4 - 18.05.2004 - 11:09 | А как же у пользователя будут появляться все сообщения? |
DIVЕR 5 - 18.05.2004 - 18:07 |
Fida, тебе вероятно надо сделать как минимум 2 вещи =) : - разобраться в том, как происходят запросы к SQL-серверу и, в частности, как происходит оптимизация, скажем так, на уровне запроса. Например, ты можешь в запросе рассортировать все сообщения по времени и выбрать только первые 40. Если всё это укажешь в запросе как надо, то SQL-сервер сам разберётся как ему лучше поступить, чтоб не жрать ресурсы. При этом все данные БД хранятся в оперативке, а не на диске, поэтому доступ к ним происходит очень быстро. Плюс к этому - индексация, которая ОЧЕНЬ ускоряет поиск по таблицам. В общем, в доках по БД это всё хорошо расписано. Возьми хотя бы тот же мануал по MySQL с mysql.com. - посмотреть как работают реальные чаты. Тот же phpMyChat - ярчайший пример =) (как и множество других). Они именно так все и спроектированы (как я написал в п.1). |
Deflorator 6 - 18.05.2004 - 18:28 | Афтар, а ты отсылай не все сообщения, а яваскрипт с кодом для добавления какого-то очередного сообщения во фрейм с сообщениями (думаю, без них не обойдется). Об этом речь? А о нагрузке на БД не беспокойся - не таких таскали... |
Mexoc 7 - 19.05.2004 - 17:08 |
Нет, не спрашивайте про чаты! Я же не смогу остановиться!!! Вобщем, базы храни где хочешь, хоть в оперативке. Только храни их со временим их поста. И храни время последнего _выведенного_ поста. При обращении к базе сравнивай время и выводи только те, которые появились после последнего выведенного. |
Уверенный 8 - 21.05.2004 - 09:42 |
Автору: посмотри на этот чат: http://www.gtchat.de/main_en.html Там и исходники есть, и пояснения кое-какие. |
Mexoc 9 - 23.05.2004 - 00:06 | Посмотри этот чат: chat.asut.ru Могу рассказатькак работает, а сырцы тебе не дадут:Р |