Есть таблицы в базе данных (допустим две), одна где записаны зарегистрированные пользователи, во второй находятся сообщения оставленные пользователями.
На сайте вывожу сообщения в цикле.
Как лучше сделать?
1)При отправке сообщения берутся данные из таблицы зарегистрированных пользователей, и вместе с сообщением записываются в таблицу с сообщениями.
2)При выводе сообщения в цикле, подключатся к БД, брать из таблицы зарегистрированных пользователе данные, и выводить их вместе с сообщением .
Если делать как в первом варианте, то при смене пользователем личных данных(например: аватар), в предыдущих сообщениях(уже написанных пользователем они останутся неизменны).
Во втором варианте смущает нагрузка на сервер (каждый раз обращаться к БД)
Если взять первый вариант можно при смене личных данных пользователем подключится к таблице сообщений в каждом сообщении этого пользователя поменять данные.
Или может это как то по другому делается?
Спустя 11 минут, 3 секунды (9.09.2010 - 16:30) Lenarfate написал(а):
пользуй первый пункт
Спустя 1 час, 28 минут, 43 секунды (9.09.2010 - 17:59) FatCat написал(а):
Цитата (Ser18 @ 9.09.2010 - 17:19) |
Во втором варианте смущает нагрузка на сервер (каждый раз обращаться к БД) |
В движке этого форума при показе топика джойнится таблица пользователей.
Прирост нагрузки настолько мал, что этим можно пренебречь.
Когда в таблице сообщений пишется айдишник пользователя, а айдишник в таблице пользователей проиндексирован, джойн таблицы мемберов дает прирост нагрузки менее 1%.
Спустя 1 час, 30 минут, 56 секунд (9.09.2010 - 19:30) Ser18 написал(а):
Спасибо за ответы