Почему тормозит SELECT запрос (выполняется 0.5 сек)?
Здравствуйте!
В wordpress есть стандартная табличка wp_commentmeta так что, в ней у меня всего 70к записей и если я открываю ее в phpmyadmin то она открывается быстро:
Отображение строк 0 - 29 (77283 всего, Запрос занял 0.0001 сек.)
Но если я напишу на сайте новый комментарий и открою эту табличку то будет:
Отображение строк 0 - 29 (77284 всего, Запрос занял 0.4455 сек.)
И если еще раз открыть то опять запрос занимает 0.0001 сек.
т.е. после добавления новой записи в эту таблицу она первый раз открывается очень долго. Такой проблемы нет, например, с таблицей wp_postmeta где записей 300к
В чем может быть проблема? Оптимизировать, восстанавливать таблицу пробовал - не помогает.
Вообще по поведению похоже на обычную работу кеша. Данные обновились, кеш инвалидируется и холодный запрос занимает 0,5с. После его выполнения результат кешируется, поэтому последующее выполнение запроса происходит "мгновенно". Грубо говоря, 0,5с - это и есть реальное время выполнения этого запроса. Вот только почему у вас нету такого с wp_postmeta - вот это уже интересно.
Вот и я не понимаю. На самом деле у меня другая проблема, которая волнует - это долгая работа wp_list_comments() - она 50 комментариев к записи выводит по 3-4 секунды (первый раз), почему так долго - понять не могу, пробовал даже древовидные комментарии отключать, вообще толку нет. Мощности сервера избыточные, пхп 7.1, на сайте есть более сложные задачи с которыми проблем нет. Вот я и обратил внимание на эту таблицу, может с ней что не так у меня, больше вообще ума не приложу что может быть. Но по wp_list_comments() я отдельный вопрос задам, как сам все возможные варианты проверю.