Мод для поиска

Ответы на вопросы, связанные с модами для phpBB 2.0.x, кроме относящихся к форуму Для авторов (phpBB 2.0.x).
Аватара пользователя
pehota
phpBB 1.4.2
Сообщения: 52
Стаж: 19 лет 8 месяцев

Мод для поиска

Сообщение pehota »

Подскажите, существует ли мод (набор модов), который может позволить сделать следующее:

1. Когда пользователь заходит на страницу поиска, он в обязательном порядке должен указать в каком именно форуме он будет искать. Насколько я понимаю, это в некоторой степени уменьшит нагрузку на сервер.

2. На странице поиска выводится топ запросов (последние запросы, как вариант).
FTN Technologies Support - FidoNet Software
Аватара пользователя
Romiyo
Неадекватен
Сообщения: 603
Стаж: 20 лет 4 месяца
Откуда: tln.ee

Сообщение Romiyo »

pehota писал(а):2.
мне такое нравится у воблы.
Неадекватен
Аватара пользователя
severnet
phpBB 2.0.5
Сообщения: 490
Стаж: 20 лет 5 месяцев
Откуда: Санкт-Петербург

Сообщение severnet »

pehota писал(а):1. Когда пользователь заходит на страницу поиска, он в обязательном порядке должен указать в каком именно форуме он будет искать. Насколько я понимаю, это в некоторой степени уменьшит нагрузку на сервер.
Реализовано в стандартном наборе.
pehota писал(а):2. На странице поиска выводится топ запросов (последние запросы, как вариант).
Интересная штуковина, но мод такой не встречал.
Изображение
Аватара пользователя
pehota
phpBB 1.4.2
Сообщения: 52
Стаж: 19 лет 8 месяцев

Сообщение pehota »

Реализовано в стандартном наборе.
Упс... А где? Нигде подобных настроек не встречал.
FTN Technologies Support - FidoNet Software
Аватара пользователя
severnet
phpBB 2.0.5
Сообщения: 490
Стаж: 20 лет 5 месяцев
Откуда: Санкт-Петербург

Сообщение severnet »

pehota писал(а):Упс... А где? Нигде подобных настроек не встречал.
Уверен? :D
Вот смотри: Изображение
Изображение
Аватара пользователя
pehota
phpBB 1.4.2
Сообщения: 52
Стаж: 19 лет 8 месяцев

Сообщение pehota »

severnet, да я же не это имею в виду :lol:

Я хочу запретить юзерам поиск по всем форумам. Хочу, чтобы они в обязательном порядке выбирали тот или иной форум.
FTN Technologies Support - FidoNet Software
Аватара пользователя
pehota
phpBB 1.4.2
Сообщения: 52
Стаж: 19 лет 8 месяцев

Сообщение pehota »

Судя по всему мода такого не существует. Вопрос к местным гуру:

Снизится ли нагрузка на сервер (в момент совершения поиска), если будет введен принудительный выбор определенного раздела форума?
FTN Technologies Support - FidoNet Software
Jovani
phpBB 2.0.5
Сообщения: 477
Стаж: 21 год

Сообщение Jovani »

pehota писал(а):Судя по всему мода такого не существует. Вопрос к местным гуру:

Снизится ли нагрузка на сервер (в момент совершения поиска), если будет введен принудительный выбор определенного раздела форума?
Думаю, что не на много.
Если хочешь снизить нагрузку при поиске, нужно подыскивать более существенный вариант, исходя из многих факторов.

Тема эта, весьма болезнена для больших и посещаемых форумов.
Есть кое какие наработки, которые слишком долго расписывать.
Это нужно целую статью катать, так как нужно делать целый комплекс модификаций ...
Xpert
phpBB Guru
phpBB Guru
Сообщения: 5484
Стаж: 21 год 1 месяц
Поблагодарили: 2 раза

Сообщение Xpert »

Jovani
Ждемс :)
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
Аватара пользователя
AlexWB
phpBB 1.4.4
Сообщения: 199
Стаж: 20 лет 3 месяца
Откуда: Kiev.UA

Сообщение AlexWB »

Jovani писал(а):нужно делать целый комплекс модификаций
возможно ошибаюсь, но модификации нужно подвергнуть только спосб отображения списка форумов в форме поиска - вместо списка использовать чекбоксы или радио кнопочки
проверку "отмечен/не отмечен" осуществлять JS

и еще одно ИМХО
тут могу ошибаться, т.к. с механизмом работы sql сервера знаком плохо, но на основе наблюдений за обработкой запросов различной степени сложности, сделал вывод, что нагрузку на sql сервер данное ограничение не снизит, скорее увеличит, за счет проверки доп. условий
Xpert
phpBB Guru
phpBB Guru
Сообщения: 5484
Стаж: 21 год 1 месяц
Поблагодарили: 2 раза

Сообщение Xpert »

pehota писал(а):2. На странице поиска выводится топ запросов (последние запросы, как вариант).
Застолблю идею. Мне подобный мод интересен :)
Вроде подобного не встречал.

Добавлено спустя 2 часа 16 минут 35 секунд:

Last search queries info
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
Jovani
phpBB 2.0.5
Сообщения: 477
Стаж: 21 год

Сообщение Jovani »

Xpert писал(а):
pehota писал(а):2. На странице поиска выводится топ запросов (последние запросы, как вариант).
Застолблю идею. Мне подобный мод интересен :)
Вроде подобного не встречал.
Вообще-то такое видел именно на phpBB, только не помню где :)
Xpert
phpBB Guru
phpBB Guru
Сообщения: 5484
Стаж: 21 год 1 месяц
Поблагодарили: 2 раза

Сообщение Xpert »

Jovani
Поздно, уже сделал. Ссылка выше :)
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
Jovani
phpBB 2.0.5
Сообщения: 477
Стаж: 21 год

Сообщение Jovani »

Xpert писал(а):Jovani
Ждемс :)
По поводу статьи, так это скорее всего, не получится.
Могу сказать только, основное.

На больших форумах (где большая база и частые посты), тормоза происходят в ситуациях, когда идут многочисленные одновременные посты и поиски.
В момент поста, блокируются "поисковые" таблицы и перестраивается индекс.
И если в таблице много записей, то перестройка индекса занимает солидно времени и ресурсов.
Поисковые запросы, в это время, стоят в очереди, тормозя тем самым все остальные запросы.

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

Я сделал через cron
У меня, теперь, при постинге, редактировании, удаления сообщения, вместо изменения поисковых таблиц, просто добавляется в дополнительно созданные таблицы, записи, какие сообщения нужно обработать.
Специальный скрипт, запускаемый из crona во время наменьшей посещаемости, проверяет загрузку проца, и потихоньку обрабатывает "поисковые" таблицы.
Такой способ, существенно облегчил проблему поиска в часы пик.

Другие способы менее эффективны, но тем не менее, в комплексе, также облегчают нагрузку.
Возможно позже, если будет время, я их кратко опишу.

Добавлено спустя 6 часов 14 минут 31 секунду:

Пока есть время, хочу уберечь от одной ошибки, на которую я напоролся.
А именно ...

По идее, чем меньше таблица, тем легче MySQL будет вытаскивать из нее данные.
Следовательно, задача - уменьшить поисковые таблицы (search_wordlist и search_wordmatch).
Как уменьшить? Внесением стоп-слов.
То есть, по идее, чем больше введено стоп-слов, тем меньше таблица, и как следствие, меньше нагрузка.

Вот тут я ошибся :(
Увы, не все так просто ....

По поводу "меньше таблица - меньше нагрузка", это так.
Но вот решение ввести большое количество стоп-слов, не совсем ...

Дело в том, что при каждом посте, этот список, достаточно тяжело обрабатывается как массив в functions_search.php.
И чем он больше, тем больше нагрука PHP :(
В часы пик, у меня, переодичность новых постов, может достигать 1 пост в секунду.
Результат большого количества стоп-слов очевиден - "тормоза".

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

Спросите, к чему такие сложности?
Отвечу, что другого решения "выжить" большому форуму на shаred-хостинге, я не нашел.
Может есть и лучшие решения, но я их не нашел.
Если кто может сказать что либо определенное по данному вопросу, с удовольствием послушаю.
Аватара пользователя
pehota
phpBB 1.4.2
Сообщения: 52
Стаж: 19 лет 8 месяцев

Сообщение pehota »

Xpert,

Сегодня зашел на форум где поставил мод, почему-то не показывает ниодного проса: "Last queries: No queries". С чем может быть связано?

P.S. Моды новые не ставил, в БД не копался.
FTN Technologies Support - FidoNet Software

Вернуться в «Поддержка модов для phpBB 2.0.x»