Установка Sphinx на примере FreeBSD

Started by Mikotka on 2011-10-26 09:06 — 25 replies, 25975 views

#11
И еще. Я не совсем понимаю вот это объединение в запросе
LEFT JOIN bb_topics t on pt.post_id = t.topic_first_post_id \
В таком варианте конкретным образом кладется сервер. Моя достаточно мощная машина 140000 записей обрабатывает больше часа. Это неправильно
Ради эксперимента (один черт поиск по постам не пашет) изменил запрос на такой
sql_query              = \
        SELECT pt.post_id, pt.post_text, t.topic_id, t.forum_id \
        FROM bb_posts_text pt, bb_posts t \
        WHERE pt.post_id = t.post_id AND pt.post_id BETWEEN $start AND $end
Обработался секунд за 20.

😕
#12
DarkMod,
Да работает, только по полным словам. сокращенным не как
Кажется, я с этим разобрался. Попробуйте сначала поискать полное слово, но ЧАСТО использующееся на торренте. Например, "скачать" или "золото" или что-то такое. 99.9% что поиск выдаст "Нету ничего такого". Если так, попробуйте вот это

/includes/sphinxapi.php
$this->_limit        = 20;

Выставите параметр этак в 100, а лучше больше. Дело в том, что сфинкс выдает совпадения не по отдельной теме при поиске, а по всему индексу, а уж потом ТП2 их фильтрует на нужные. И совпадений обычно гораздо больше этого лимита в 20. Особенно, если использовать *
#13
Mikotka, а с крона что надо убирать или нет если поставил сфинкс?
#14
deymon,
Не знаю. Две задачи там с поиском связаны. Теоретически убрать можно, практичски - не изучал
#15
deymon,
Не знаю. Две задачи там с поиском связаны. Теоретически убрать можно, практичски - не изучал

а какие именно? Вот Clean search results и ?
#16
Установил sphinx
Проверка работы сфинкса http://brodim.com/sphinxtest.php , отрабатывает правильно !
Исходник скрипта:
<?php

$s = new SphinxClient;
$s->setServer("localhost", '3312');
$s->setMatchMode(SPH_MATCH_ANY);
$s->setMaxQueryTime(3);

$result = $s->query("DVD9");

var_dump($result);

?>

Сфинкс слушает на 127.0.0.1:3312
И после того как включил его в конфиге, при поиске пишет ошибку:

Fatal error: Cannot redeclare class SphinxClient in /sd/tt/includes/sphinxapi.php on line 0 Call Stack: 0.0001 631712 1. {main}() /sd/tt/tracker.php:0 0.0691 2224176 2. get_title_match_topics() /sd/tt/tracker.php:508 0.0692 2224616 3. init_sphinx() /sd/tt/includes/functions.php:2621

Подскажите как исправить , версия релиза последняя R339
#17
поставил сфинкс, исправил запрос упоминаемый Mikotka - действительно вешает сервер. Не могу понять почему через сфинкс выдает 20 результатов поиска, когда через mysql гораздо больше. Где искать это ограничение?
#18
andros,
5-ю постами выше был ответ 🙂
/includes/sphinxapi.php
$this->_limit        = 20;
#19
подскажите пожалуйста, как добавить в автозапуск?
#20
rc скрипт написать