X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

2 страниц V   1 2 >
Открыть тему
Тема закрыта
> Wp_cron.php перегружает процессор хостера.
litub
litub
Topic Starter сообщение 29.5.2013, 18:29; Ответить: litub
Сообщение #1


Добрый день.
Пытался разобраться с данной проблемой на трех разных форумах. Не получилось. Теперь прошу помощи у вас.
Суть:

Есть блог techseller.ru, который я недавно перенес на хостинг Джино. И начались развлечения...
Посетителей на блоге около 2000 в день. Тема вроде как платная от Гудвина и должна быть оптимизирована. Плагинов в данный момент подключено 10 штук:
Список страниц
Subscribe To Comments
RusToLat
Google XML Sitemaps
Disable WordPress Updates
DB Cache Reloaded Fix
Dagon Design Sitemap Generator
cforms
All In One SEO Pack
Akismet

Нагрузка на CPU почти 10% - ограничивается доступ к сайту.

Посоветовали переименовать файл wp_cron. Сделал - нагрузка упала в три раза. Это, конечно, хорошо, но не правильно.
Подскажите, что может такого делать планировщик, чтобы так грузить хостинг? Как это можно исправить?
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
html-ka
html-ka
сообщение 29.5.2013, 18:36; Ответить: html-ka
Сообщение #2


ну как минимум взглянуть на его код...
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
litub
litub
Topic Starter сообщение 29.5.2013, 20:17; Ответить: litub
Сообщение #3


Вот его код:

<?php
/**
* WordPress Cron Implementation for hosts, which do not offer CRON or for which
* the user has not set up a CRON job pointing to this file.
*
* The HTTP request to this file will not slow down the visitor who happens to
* visit when the cron job is needed to run.
*
* @package WordPress
*/
ignore_user_abort(true);
if ( !empty($_POST) || defined('DOING_AJAX') || defined('DOING_CRON') )
die();
/**
* Tell WordPress we are doing the CRON task.
*
* @var bool
*/
define('DOING_CRON', true);
if ( !defined('ABSPATH') ) {
/** Set up WordPress environment */
require_once('./wp-load.php');
}
// Uncached doing_cron transient fetch
function _get_cron_lock() {
global $_wp_using_ext_object_cache, $wpdb;
$value = 0;
if ( $_wp_using_ext_object_cache ) {
// Skip local cache and force refetch of doing_cron transient in case
// another processs updated the cache
$value = wp_cache_get( 'doing_cron', 'transient', true );
} else {
$row = $wpdb->get_row( $wpdb->prepare( "SELECT option_value FROM $wpdb->options WHERE option_name = %s LIMIT 1", '_transient_doing_cron' ) );
if ( is_object( $row ) )
$value = $row->option_value;
}
return $value;
}
if ( false === $crons = _get_cron_array() )
die();
$keys = array_keys( $crons );
$gmt_time = microtime( true );
if ( isset($keys[0]) && $keys[0] > $gmt_time )
die();
$doing_cron_transient = get_transient( 'doing_cron');
// Use global $doing_wp_cron lock otherwise use the GET lock. If no lock, trying grabbing a new lock.
if ( empty( $doing_wp_cron ) ) {
if ( empty( $_GET[ 'doing_wp_cron' ] ) ) {
// Called from external script/job. Try setting a lock.
if ( $doing_cron_transient && ( $doing_cron_transient + WP_CRON_LOCK_TIMEOUT > $gmt_time ) )
return;
$doing_cron_transient = $doing_wp_cron = sprintf( '%.22F', microtime( true ) );
set_transient( 'doing_cron', $doing_wp_cron );
} else {
$doing_wp_cron = $_GET[ 'doing_wp_cron' ];
}
}
// Check lock
if ( $doing_cron_transient != $doing_wp_cron )
return;
foreach ( $crons as $timestamp => $cronhooks ) {
if ( $timestamp > $gmt_time )
break;
foreach ( $cronhooks as $hook => $keys ) {
foreach ( $keys as $k => $v ) {
$schedule = $v['schedule'];
if ( $schedule != false ) {
$new_args = array($timestamp, $schedule, $hook, $v['args']);
call_user_func_array('wp_reschedule_event', $new_args);
}
wp_unschedule_event( $timestamp, $hook, $v['args'] );
do_action_ref_array( $hook, $v['args'] );
// If the hook ran too long and another cron process stole the lock, quit.
if ( _get_cron_lock() != $doing_wp_cron )
return;
}
}
}
if ( _get_cron_lock() == $doing_wp_cron )
delete_transient( 'doing_cron' );
die();

Я, к сожалению, в этом слабо разбираюсь.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
litub
litub
Topic Starter сообщение 30.5.2013, 22:09; Ответить: litub
Сообщение #4


Жаль...
Оказывается не только я не знаю, как решить данную проблему.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
BeNi
BeNi
сообщение 31.10.2018, 20:24; Ответить: BeNi
Сообщение #5


Тема осталась незавершенной... Столкнулся с такой же проблемой - wp cron безбожно грузит сервер POST запросами. Хостер еще не ругался, но при зашкаливании разрешенной  нагрузки сйт теряет функциональность. Посмотрел access.log - за сутки 300 запросов! Это при том, что посетителей немного.

Кто может подсказать, как задать ему нужную периодичность запросов?

Сначала запретил ему вход через IP. Все равно долбит, хоть и выдает ошибку 403. Отключил его совсем,
прописав в wp-config.phpdefine('DISABLE_WP_CRON', true); Мне кажется это не совсем гуд.

Кто может подсказать, как задать ему нужную периодичность запросов? Или может какой другой способ есть?
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
BLIK
BLIK
сообщение 31.10.2018, 20:31; Ответить: BLIK
Сообщение #6


(BeNi @ 31.10.2018, 23:24) *
Кто может подсказать, как задать ему нужную периодичность запросов? Или может какой другой способ есть?

Вот статья, в ней говорится о том как исправить, но есть пункт, как настроить cron на сервере, и можете сделать задачу раз в сутки, например.
[mwhide=0]https://misha.blog/wordpress/wp_cron.html[/mwhide]
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
BeNi
BeNi
сообщение 31.10.2018, 20:48; Ответить: BeNi
Сообщение #7


BLIK_mw, спасибо! Завтра попробую разобраться со статьей, позже отпишусь о результатах.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
BLIK
BLIK
сообщение 1.11.2018, 2:55; Ответить: BLIK
Сообщение #8


BeNi,Сейчас смотрел видео и попалось еще решение по обновам wordpress, посмотрите:
[mwhide=0]https://github.com/mihdan/mihdan-disable-aggressive-updates[/mwhide]
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
WGN
WGN
сообщение 1.11.2018, 10:16; Ответить: WGN
Сообщение #9


(litrub @ 29.5.2013, 21:29) *
Подскажите, что может такого делать планировщик, чтобы так грузить хостинг? Как это можно исправить?

У вас конфликт плагинов идет скорее, попробуйте все отключить и посмотреть, если все норм потом активировать по одному - тем самым найдете конфликтный плагин. Также есть плагин который ищет(конфликтные плагины) точно не помню как называется но в названии есть  "health" 


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
BeNi
BeNi
сообщение 1.11.2018, 13:09; Ответить: BeNi
Сообщение #10


Проконтролировал работу сайта.  Обращений wp cron к сайту нет. Плагины работают нормально. Нагрузка на сервер упала существенно, но еще не вечер...

(BLIK) *
wp cron

Blik, спасибо за подсказки. Пока жду - как поведет себя сайт без этого злополучного wp crona. Хотя, если вдуматься - если не ставить задач вордпрессу, то удаление его функций не повлияет на работу сайта. А я их и не ставлю!

А вы как думаете?

Сообщение отредактировал BeNi - 1.11.2018, 13:13
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
2 страниц V   1 2 >
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) СОЗДАНИЕ : / САЙтЫ / ЛЕНДЫ / БОТЫ ТГ / ВАЙТЫ / КРЕО / СОФТЫ / ДИЗАЙН [PHP, JS, HTML/CSS] и другое
5 CULA 3416 19.12.2023, 18:55
автор: CULA
Открытая тема (нет новых ответов) Услуги по созданию и доработке скриптов PHP, MySQL, JavaScript, jQuery
Разработка сайтов и сервисов под-ключ
0 alexey 1243 24.11.2023, 14:46
автор: alexey
Горячая тема (нет новых ответов) Тема имеет прикрепленные файлыВеб-разработка (HTML5, CSS3, JavaScript, jQuery, Ajax, PHP)
56 qpPeW 44918 19.7.2023, 10:03
автор: qpPeW
Открытая тема (нет новых ответов) Есть спецы по php/laravel?
3 Mixatraider 1890 26.5.2023, 20:48
автор: Mixatraider
Открытая тема (нет новых ответов) Опытный PHP\Python разработчик в поиске интересных задач
6 daikzlex 3403 25.5.2023, 13:55
автор: daikzlex


 



RSS Текстовая версия Сейчас: 23.4.2024, 20:38
Дизайн