2 секунд это конечно жестоко.Знаю, но по другому сервис не актуален будет((
Это же внутренние запросы.
function execute_background ($url, $params = array()) {
$parts = parse_url($url);
if(strcmp($parts['scheme'], 'https') == 0) {
$port = 443;
$host = "ssl://".$parts['host'];
} else {
$port = 80;
$host = $parts['host'];
}
if(($fp = fsockopen($host, isset( $parts['port'] ) ? $parts['port'] : $port, $errno, $errstr, 30)) === FALSE) {
throw new Exception("Internal server error: background process could not be started");
}
$post_string = http_build_query($params);
$out = "POST ".$parts['path']." HTTP/1.1\r\n";
$out .= "Host: ".$host."\r\n";
$out .= "Content-Type: application/x-www-form-urlencoded\r\n";
$out .= "Content-Length: ". strlen($post_string) ."\r\n";
$out .= "Connection: Close\r\n\r\n";
$out .= $post_string;
fwrite($fp, $out);
fclose($fp);
}
У тебя что 800 евентов обновляются каждые 2 секунды?
require_once(__DIR__ ."/../Types.php");
Вот это что за хрень? Почему work.php не может сразу отправить данные getEvent? Зачем getEvent заново гетит JSON и заново ищет там ID?
И сколько гигабайт в вашем JSON что процесс не может его обойти и отправить мускул за 2 секунды?
var arr_response = new Array();
response.sort(function(a, b) {
if (a.sorting > b.sorting) {
return -1;
}
if (a.sorting < b.sorting) {
return 1;
}
return 0;
});
$.each(response, function(key, value) {
var tournamentsSorting = $.map(value.tournaments, function(value, index) {
return [value];
});
delete value.tournaments;
arr_response[key] = value;
tournamentsSorting.sort(function(a, b) {
if (a.sorting < b.sorting) {
return -1;
}
if (a.sorting > b.sorting) {
return 1;
}
return 0;
}).reverse();
$.each(tournamentsSorting, function(key2, value2) {
var eventsSorting = $.map(value2.events, function(value, index) {
return [value];
});
delete value2.events;
if (arr_response[key]['tournaments'] == undefined) {
arr_response[key]['tournaments'] = [];
}
arr_response[key]['tournaments'].push(value2);
eventsSorting.sort(function(a, b) {
if (a.sorting < b.sorting) {
return -1;
}
if (a.sorting > b.sorting) {
return 1;
}
return 0;
}).reverse();
$.each(eventsSorting, function(key3, value3) {
if (arr_response[key]['tournaments'][key2]['events'] == undefined) {
arr_response[key]['tournaments'][key2]['events'] = [];
}
arr_response[key]['tournaments'][key2]['events'].push(value3);
});
});
});
var tournamentsSorting = $.map(value.tournaments, function(value, index) {return [value];});
tournamentsSorting.sort(function (a, b) {
if (a.sorting < b.sorting) {
return -1;
}
if (a.sorting > b.sorting) {
return 1;
}
return 0;
}).reverse();
# docker restart #idcontainer >/dev/null 2>&1
через крон 3 раза в день. Можете что то другое подсказать?