|
|
|
Тормозят некоторые запросы форума punbb
|
|||
|---|---|---|---|
|
#18+
Доброе время суток. Есть форум punbb, недавно переехал с mysql 5.0.67 на 5.1.51, вылезли некоторые непонятные тормоза. Там, например, такой запрос для вывода страницы темы: Код: plaintext 1. 2. 3. 4. 5. 6. 7. его EXPLAIN показывает, что всё более-менее нормально: А вот тот-же самый запрос, но с другими числами Код: plaintext 1. 2. 3. 4. 5. 6. 7. CREATE TABLE users Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. В чём может быть дело? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.01.2011, 11:19:16 |
|
||
|
Тормозят некоторые запросы форума punbb
|
|||
|---|---|---|---|
|
#18+
Barvinok, видимо неудачное соотношение числа юзеров и ожидающегося числа постов в этой теме. mysql решил начать строить объединение с users. эта плохая стратегия. Попробуй влепи туда use index (posts_topic_idx). не поможет - так force index. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.01.2011, 12:39:10 |
|
||
|
Тормозят некоторые запросы форума punbb
|
|||
|---|---|---|---|
|
#18+
вот еще интересная штука, но сомнительная optimizer_search_depth http://dev.mysql.com/doc/refman/5.1/en/server-system-variables.html#sysvar_optimizer_search_depth If set to 63, the optimizer switches to the algorithm used in MySQL 5.0.0 (and previous versions) for performing searches. The value of 63 is deprecated and will be treated as invalid in a future MySQL release. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.01.2011, 12:47:55 |
|
||
|
Тормозят некоторые запросы форума punbb
|
|||
|---|---|---|---|
|
#18+
netwindBarvinok, видимо неудачное соотношение числа юзеров и ожидающегося числа постов в этой теме. mysql решил начать строить объединение с users. эта плохая стратегия. Попробуй влепи туда use index (posts_topic_idx). не поможет - так force index. Спасибо, помогло! :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.01.2011, 12:56:40 |
|
||
|
Тормозят некоторые запросы форума punbb
|
|||
|---|---|---|---|
|
#18+
Barvinok, а что optimizer_search_depth ? портить регулярно обновляемый базовый код скрипта может оказаться неудобно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.01.2011, 13:10:33 |
|
||
|
Тормозят некоторые запросы форума punbb
|
|||
|---|---|---|---|
|
#18+
netwindBarvinok, а что optimizer_search_depth ? портить регулярно обновляемый базовый код скрипта может оказаться неудобно. Да, но я так понял что эта переменная deprecated, и с надеждой на будущие обновления мускуля её вообще лучше не трогать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.01.2011, 13:11:47 |
|
||
|
Тормозят некоторые запросы форума punbb
|
|||
|---|---|---|---|
|
#18+
Barvinok, им соврать - раз плюнуть. переменную ведь в недавно вышедший 5.5 перенесли. наверняка у тебя еще есть подобные запросы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.01.2011, 13:14:23 |
|
||
|
Тормозят некоторые запросы форума punbb
|
|||
|---|---|---|---|
|
#18+
netwindBarvinok, им соврать - раз плюнуть. переменную ведь в недавно вышедший 5.5 перенесли. наверняка у тебя еще есть подобные запросы. Да ладно, я лучше поправлю. Оно так портабельнее будет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.01.2011, 13:49:03 |
|
||
|
Тормозят некоторые запросы форума punbb
|
|||
|---|---|---|---|
|
#18+
Barvinok, для начала уберите USING INDEX и сделайте ANALYSE TABLES. потом можно сконцентрироватся на ЛИМИТ ххххх, 50 -- сделать типа: select ........... (только поля, БЕЗ sum()).... from post p where p.category_id = 12345 order by p.id desc limit 234546, 50 ...а потом лефт джоинить всю остальную лабуду...включая SUM()... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2015, 00:04:18 |
|
||
|
Тормозят некоторые запросы форума punbb
|
|||
|---|---|---|---|
|
#18+
javajdbc, USE INDEX убрал, ANALYZE TABLE везде выдаёт ОК. Теперь вот что интересно обнаружилось. Запрос в таком виде (убрал внутренние select'ы, отвечающие за скрытых юзеров и подсчёт репутации) Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. отрабатывает вполне сносно -- 0.7 секунды. Если вернуть параметры Код: sql 1. где функция IsShielded это Код: sql 1. то с ними исходный запрос крутится 3.5 секунды, а если вернуть любой из остальных двух подселектов Код: sql 1. 2. то как раз и виснет на очень длительное время. его explain Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2015, 09:53:42 |
|
||
|
Тормозят некоторые запросы форума punbb
|
|||
|---|---|---|---|
|
#18+
А если создать индексы reputation(user_id,rep_plus) и reputation(user_id,rep_minus)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2015, 12:18:18 |
|
||
|
Тормозят некоторые запросы форума punbb
|
|||
|---|---|---|---|
|
#18+
Barvinok , оработайте: select p.id -- только ИД from post p where p.category_id = 8993 order by p.id desc limit 25050, 50 наобум даю 5-20 милисекунд на эту операцию. ....потом подсоединяйте остальные таблицы (включая еше раз post ) для вытаскивания всей остальной информации. Подсоединяйте таблицы по одной и замеряйте время (не забываем SQL_NO_CACHE). Если заметите замедление -- выдавайте сюда время и ЕКСПЛАЙН до и после замедления. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2015, 14:51:36 |
|
||
|
Тормозят некоторые запросы форума punbb
|
|||
|---|---|---|---|
|
#18+
BarvinokПрошу прощения за некропостинг, но опять-таки тот же запрос и те же проблемы того же форума в связи с апгрейдом. А можно узнать в связи с апгрейдом чего именно ? можно же форум апргейдить. Разработчики обычно идут одной волной вперед. Новому mysql - новый форум и все должно быть нормально. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2015, 14:54:01 |
|
||
|
Тормозят некоторые запросы форума punbb
|
|||
|---|---|---|---|
|
#18+
Всем спасибо за полезные советы, пока что я просто отключил репутацию, так как форум переживает не лучшие времена и, скорее всего, скоро закроется. "С апгрейдом" в смысле обновлением ОС и версии mysql. А апгрейдить его нет смысла ещё и потому, что там очень много самописных функций, завязанных на исходники старой версии. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2015, 11:54:58 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=39086664&tid=1832466]: |
0ms |
get settings: |
7ms |
get forum list: |
12ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
54ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
48ms |
get tp. blocked users: |
1ms |
| others: | 213ms |
| total: | 348ms |

| 0 / 0 |
