Очень медленная работа на большой базе

12 3
w-builder
На сайте с 24.12.2005
Offline
153
1961

Есть такая ситуация.

Сайт на Wordpress. В нём ~ 20 000 статей, общей площадью 166 Мбайт. Да, сам написал :)

Как это ни странно, всё работает. Правда, очень медленно. Главная страница генерируется около 3 секунд. Другие страницы на движке Вордпресса на этом же сервере - 0.3 - 0.5 секунды.

Так вот вот в чем вопросы:

1) это от размера базы (в Мегабайтах) так падает производительность? или от количества записей? (... или оба)

2) В какую сторону оптимизировать MySQL в таких условиях? Что повышать и что понижать?

Всё это работает на 2.5Celeron + 512M + 160G+80G + FreeBSD 6 + PHP4 + MySQL 4.0 + Apache 1.3

Привычная кнопка "бабло" (http://www.sape.ru/r.8941d9c141.php) + кнопка "кладбище ГСов с парой хороших площадок" (http://gogetlinks.net/?inv=cj4bru) + Советы по увеличению дохода в РСЯ в 2 раза для партнеров бесплатно (http://profit-project.ru/1256759949)
DA
На сайте с 04.02.2005
Offline
165
#1

Размер базы не такой уж и большой. Видали и побольше:)

Индексы делай по ключевым полям(по которым идет выборка, допустим по дате)

Смотри все запросы которые выполняются и делай их EXPLAIN

тыщ-пыщ
Shtogrin
На сайте с 02.11.2006
Offline
95
#2
w-builder:

Так вот вот в чем вопросы:
1) это от размера базы (в Мегабайтах) так падает производительность? или от количества записей? (... или оба)

В разумных пределах - ни от того, ни от другого, если правильные запросы. А запросы в WP наверно правильные.

w-builder:

2) В какую сторону оптимизировать MySQL в таких условиях? Что повышать и что понижать?

В даном случае необходимо периодично делать OPTIMIZE TABLE, так как таблицы содержат большие куски текста. И смотреть настройки MySQL

www.shtogrin.com (http://www.shtogrin.com/). Канцтовары (http://www.invit.com.ua/). 1С Бухгалтерия (http://account.kiev.ua/).
DA
На сайте с 04.02.2005
Offline
165
#3

OPTIMIZE TABLE надо делать только в том случае, если идет много удалений из базы. А т.к. речь идет о статьях, они врядли удаляются и висят на сайте все время.

DA
На сайте с 04.02.2005
Offline
165
#4
> спрашивают же про конкретный движок, на фига общие советы давать? взял бы да посмотрел где индексов не хватает и сразу совет дал бы

Может за тебя и зарплату получить?

Shtogrin
На сайте с 02.11.2006
Offline
95
#5
DJ_AlieN:
OPTIMIZE TABLE надо делать только в том случае, если идет много удалений из базы. А т.к. речь идет о статьях, они врядли удаляются и висят на сайте все время.

Статьи еще могут и редактироваться.

DJ_AlieN:
Может за тебя и зарплату получить?

Это с кем вы там еще разговариваете?

w-builder
На сайте с 24.12.2005
Offline
153
#6

Не... Они только добавляются пока.

Оптимизировал. Драматического прироста пока не заметил :)

table cache поднял с 64 до 256

key buffer c 16M до 32М

- работает стабильно, но также долго :)

Shtogrin
На сайте с 02.11.2006
Offline
95
#7

Туда же

query_cache_size=8M

И дважды открыть главную страницу

DA
На сайте с 04.02.2005
Offline
165
#8
w-builder:
Оптимизировал. Драматического прироста пока не заметил :)

О чем и речь:)

w-builder:

table cache поднял с 64 до 256
key buffer c 16M до 32М

- работает стабильно, но также долго :)

Покажи типичный запрос к БД и результат его EXPLAIN'a мне кажется индексы тебя спасут.

Попробуй еще включить кэширование запросов:

SET GLOBAL query_cache_size = 30000000;

edogs software
На сайте с 15.12.2005
Offline
775
#9

Мы бы кэширование прикрутили... 20к статей, имхо могут этого заслужить.

Второй вариант - что бы не перебирать все запросы - включить лог slow query - посмотреть что в него нападает.

На таблицу posts повесили бы индексы на дату и категорию - там их почему-то по умолчанию вроде нет, хотя некоторые выборки с ними идут.

Разработка крупных и средних проектов. Можно с криптой. Разумные цены. Хорошее качество. Адекватный подход. Продаем lenovo legion в спб, дешевле магазинов, новые, запечатанные. Есть разные. skype: edogssoft
bbon
На сайте с 01.04.2006
Offline
168
#10

......................

12 3

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий