[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: DBMail



On 7/16/07, Pechnikov Alexey <pechnikov@sandy.ru> wrote:
> порядка 10-20 активных соединений,
Какой пул - в смысле, PgPool или ...?
никакого :) А в чём смысл его использования ?
Только префорк ? Или он ещё и поможет снизить количесво одноверменно
запущщеных процессов (сейчас 200-250)

> пример плана выполнения запросов:

Такое впечатление, что тело письма лежит в одной таблице с заголовками.
Если так, то кроме огорчений, ждать нечего.

Нет. Таблицы конечно разные.

> postgresql конечно 8.2 а не 8.3 :)

У меня 8.1, со следующим релизом дебиана перейду сразу на 8.3.


> shared_buffers = 512MB
Такой размер буферов требует гигов 8 или 16 оперативки. Поставьте 64 метра
буфер.
> work_mem = 256MB
Аналогично. 256 метров КАЖДОМУ пользователю на его запрос, если одновременно
20 пользователей, нужно 5 гиг ОЗУ. А у вас сколько?..
Поправил :) Это я уже  последние эксперименты увеличивал. Но вообще -
свопа почти нет и при таких настройках.


> я не думаю что тут проблема в структуре  / настройках бд - скорее в
> запросах :)

Как всегда, проблемы не ходят по одиночке. Конечно, операция ILIKE на огромной
таблице будет нереально медленно выполняться, а вот если заголовки писем
сделать отдельной табличкой, будет совсем другое дело. Но и настройки надо
поправить, при текущих постгрес будет думать, что на машине не меньше 8 Гиг
ОЗУ и постоянно попадать в своп (использует знания о количестве ОЗУ на
машине, прикидывая возможности кэширования файлов ОСью и не пытаясь
дублировать эту работу).
Заголовки - в отдельной. Но и количество записей там соотв в разы
больше чем в таблице сообщений - ~30M. Так что джойны получаются
совсем небыстрые. Не говоря уже о ILIKE.


В общем-то, все довольно просто, хотя пока я допер до того, как надо делать,
раза 3 или 4 целиком архитектуру системы переписывал (каждая итерация
занимала примерно полгода времени у 2-х разработчиков). Сейчас использую
связку Pound+AOLServer+Tcl+PostgreSQL+Pltcl. Жизнь прекрасна :-)


вот видимо и придётся слегка переписывать dbmail :)
и спасибо за советы


--
Alexej Bestchiokov
EMail/JID: proforg@maloletka.ru
phone: +7 495 7853149

Reply to: