|
|
ru.cgi.perl- RU.CGI.PERL ------------------------------------------------------------------ From : Alexander Averbuh 2:4625/69.123 06 Feb 2001 20:04:00 To : Tarasov Sergej Subject : Постраничный вывод --------------------------------------------------------------------------------
і АДЩ ДБ
Hello, Tarasov! Как поживает твой hерц?
Вторник Февраль 06 2001 12:44, Tarasov Sergej wrote to Ruslan Bondarev:
TS> А если воспользоваться старым тезисом: "Простота спасет мир".
TS> При первом запросе база возвращает массив ID записей,
TS> удовлетворяющих запросу. Мы их сортируем, находим пересечение множеств
TS> для сложных запросов и т.п. Затем пишем их во временный файл.
TS> А в выводе результатов для каждой страницы указываем не только
TS> с какой записи нужно начинать, но и имя временного файла.
TS> Затем, при запросе следующей страницы, если скрипт видит, что
TS> в запросе присутствует имя файла, он берет список ID оттуда
TS> и запрашивает у базы только нужные 20 записей по их ID.
TS> Если же имени файла в запросе нет, вся работа проделывается
TS> полностью с самого начала. А раз в сутки все временные файлы
TS> удаляются.
Этот метод имеет хорошее название: "через ж%пу". Ибо, если зайдет одновременно
1000 юзеров, необходимо открыть 1000 временных файлов. Потом морочить себе
голову прибиванием этих файлов. Если отбирать все записи сразу, как ты
говоришь, и просто заводить массив номеров - это всерьез и надолго загрузит
сервер, особенно при большом количестве записей в базе. И прочее, прочее,
прочее.
С уважением, Alexander
Так, идите мыть руки, Tarasov!
mailto: alav@gmx.net http://alhome.virtualave.net
http://haverim.virtualave.net
> Если ты будешь бройгес, я тебе сделаю такой цурыс, что ты всю жизнь будешь
> иметь нахес!
--- GoldED 2.50+
* Origin: An apple a day keeps the doctor way. (2:4625/69.123)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.cgi.perl/39713a804b8f.html, оценка из 5, голосов 10
|