Значение cron Wordpress в wp_options слишком велико

Я использую Wordpress с WooCommerce, WPML, CalderaForms.

Я отключил WP-CRON, добавив в wp-config.php из-за следующей проблемы, возникающей раньше и до сих пор:

define('DISABLE_WP_CRON', true);

Я запускаю задание CRON каждую ночь с 1:00 до wp-cron.php?doing_wp_cron.

Затем я проверяю запущенные запросы в MySQL с помощью:

SHOW FULL PROCESSLIST

Я могу заметить, что при обновлении запроса каждую секунду что-то запускается из Wordpress в записи cron в wp_options. Иногда запрос, обновляющий запись, иногда другие запросы.

Я сделал SELECT для этой записи, и результат действительно очень большой, до такой степени, что для загрузки запроса требуется время.

Есть тысячи строк с delete_transient_version. Я даже не могу скопировать содержимое, потому что страница тормозит и перестает работать.

Почему WordPress обновляет cronfrom в wp_options и почему он так сильно заполнен?

CRON останавливается через несколько минут, но выполняет много запросов, и мы говорим о ГБ в соответствии со страницей «статуса» PhpMyAdmin.

Спасибо.


person Mr.Miel    schedule 27.07.2019    source источник


Ответы (1)


Я нашел решение своей проблемы. Не уверен, почему он создал так много событий CRON, но я помню, как несколько раз импортировал массовые продукты в WooCommerce, и иногда он ломался, и это должно быть причиной того, что задания cron были настолько загрязнены. Каждый раз, когда запускается WP-CRON, он пытается очистить базу данных, но это занимает так много времени, что он обрабатывает несколько событий за раз, а событий тысячи.

Я просто сделал ОБНОВЛЕНИЕ, чтобы очистить запись:

UPDATE wp_options SET option_value = '' WHERE option_name = 'cron'

После этого при запуске wp-cron.php?doing_wp_cron или просто посещении сайта было добавлено менее 10 событий CRON, и теперь веб-сайт работает на 4 секунды быстрее, я так рад, что наконец-то он снова работает и быстро!

person Mr.Miel    schedule 27.07.2019