LINUX.ORG.RU

Метод хранения записей в БД.

 ,


0

1

Есть ли какие из готовых решений для создания высокопроизводительной системы комментариев, способной выдержать любой тип срача и холивара, каких небыло, при чем с возможностью отвечать на комментарий.

Чтобы была возможность отвечать на комментарии можно хранить информацию в древовидной структуре, это уже реализовано в treebeard и MPTT, но с таким подходом, по идее, тратится слишком много ресурсов либо на чтение и построение всей этой структуры комментов, либо на добавление нового комментария.

Стоит ли вообще использовать древовидные структуры, или проще создать простую таблицу, где будет поле, содержащее ID сообщения, на которое ответили?

★★★★★

по идее, тратится слишком много ресурсов на добавление нового комментария.

А ты проверь.

baverman ★★★
()
Ответ на: комментарий от baverman

А че тут проверять, взять тот же MPTT, при добавлении нового узла будет обновляться все дерево. Очевидно же, что на запись оно будет прожорливо.

Siado ★★★★★
() автор топика
Ответ на: комментарий от Siado

Думаю нужно замерять. Скорее всего обновление дерева будет занимать мелочи по сравнению с бурлением. Другими словами соотношение срач/время обновления может быть прекрасным.

AlexKiriukha ★★★★
()
Ответ на: комментарий от heisenberg

для таких задач ни один из тегов, указанных в посте, не подходит

А пацаны из Disqus-а и не знают!

SOmni ★★
()

Только тестами и замерами ты сможешь узнать что будет происходить.

Но пожалей комментаторов, сделай линейную структуру, а то древовидная структура здесь - это зло.

gruy ★★★★★
()
Ответ на: комментарий от GateKeeper

Бамплимит в настройках выставляется. Теоретически, думается мне, ничего не мешает сделать его ОЧЕ большим. А что?

jessey
()
Ответ на: комментарий от jessey

Ну, я вот спрашиваю, он везде просто так выставлен, или в силу технологических подводных камней в случае отсутствия?

GateKeeper ★★
()
Ответ на: комментарий от GateKeeper

Думаю, из идеологических соображений просто.

jessey
()
Ответ на: комментарий от GateKeeper

На _image_бордах хранятся картинки. Бамплимит выставляется, чтобы не появлялись многомегабайтные монстространицы.

Yasenfire
()
Ответ на: комментарий от gruy

Но пожалей комментаторов, сделай линейную структуру, а то древовидная структура здесь - это зло.

Дык здесь только хранение древовидное, представлено то по линейному

Siado ★★★★★
() автор топика
Ответ на: комментарий от GateKeeper

Я не говорил, что они идеал. Я просто отметил, что бамплимит выставляется специально, чтобы не нагружать и клиент, и сервер - это такой вариант паджинации.

Хранить дерево в реляционной БД в виде плоской таблицы - будет крайне нетривиальная выборка поддерева. Правда для комментариев такое может подойти, если выбирать из базы комментарии по комментируемой сущности, а затем на клиенте базы сворачивать список строк в дерево.

Yasenfire
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.