|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Alexander Pashchenko 2:5062/36 22 Mar 2005 14:52:08 To : Artem Chuprina Subject : Алгоритм построения треда -------------------------------------------------------------------------------- Reply to letter <21 ЬНЮ 05>, Artem Chuprina -> Alexander Pashchenko: AP>> Задумал писать форум. Чисто для себя, для души. Простенький, лишь бы мне AP>> нравился. Есс-но на перле. БД - MySQL. AP>> В общем пока проектирую только, но уже задумался: а как строить треды? AC> Это хорошо, что ты задумался еще на стадии проекта... Мой довольно AC> богатый на эту тему опыт показывает, что в общем виде (т.е. с AC> возможностями ньюсридера, и вообще почти с какой угодно настройкой AC> вывода тредов) задача близкая к неразрешимой. Hу так мне не надо. Мне попроче. AC> Hу разве что у тебя туда один запрос в минуту, не чаще. Если хочешь, AC> чтобы работало быстро, следует выбрать один способ вывода тредов и AC> соптимизировать базу под него. Хм. А может проще перестраивать тред как в фидо, при добавлении нового сообщения, а не при просмотре треда. Частота вызова этой функции уменьшиться на несколько порядков. В этом случае можно либо хранить для каждой ветки готовую html-ку треда и отдавать ее в ответ на запрос, либо сделать таблицу где храниться этот тред оптимизированную для построения. И искать по ней. Hо это все хорошо, когда тред весь сразу на экран выдается. А если по кусочкам надо.... Хотя на rsdn.ru они как-то это сделали все. AC> При этом вместо поля ReplyTo, хранящего AC> ссылку на одно сообщение (или в дополнение к оному) следует держать поле AC> ReplyPath, отражающее путь по дереву треда к данному сообщению от AC> корневого сообщения треда. Можно сделать несколько способов вывода, если AC> для каждого держать свой ReplyPath, но понятно, что весьма ограниченное AC> их количество. Честно говоря не понял я тебя. Как это будет выглядеть и для как его использовать? AC> По каждому такому полю должен быть индекс, позволяющий AC> эффективно делать LIKE some_prefix% и ORDER BY. Пойду наверное SQL доучивать. Что за LIKE? :) AC> AC> В остальном - надо уже более подробно смотреть, что тебе нравится, а что AC> нет. Hо в общем виде задача решается либо гейтом в ньюсы, либо AC> написанием ньюсридера на клиентском скрипте. Hафиг :) AC> Второе - либо PerlScript, AC> что, мягко говоря, не к каждому браузеру прикручено, либо проще AC> застрелиться. Hафиг-нафиг AC>Весь юникс для того и был придуман, чтобы PS в принтер выплевывать. Это вы мне, или подпись такая? :) Gxis revido _Artem_! ... @`uptime` --- Phone(44373) Pager(005)3880173 E-mail(point212<at>mail.ru) ICQ(1911486) * Origin: Ъ АЙБ» УНёЦКФ ЖјУН·КХНЙБ АХјЯ »АБ»ЅЅјЙ И»Фј. (2:5062/36) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/1845423ffa38.html, оценка из 5, голосов 10
|