Нужно отправить несколько запросов на обновление одновременно, так как их может-быть до 100 и больше. Как это сделать?
Сейчас работает так: обновляет 10 запросов, и каждую минуту обновляет другие 10 запросов занося дату обновления в базу и так по кругу (выводит первые 10 по дате, которое самые устаревшие и т д обновляет).
Как сделать чтобы все запросы обновляло сразу параллельно их уже около 200 запросов, не нагружая сервер.
<?php
define('__ROOT__', dirname(dirname(__FILE__)));
require_once(__ROOT__.'/cover/config.php');
$stmgroups = $db->dbStream->prepare(" SELECT * FROM `groups_cover` WHERE `cover_status` = '1' AND `token_group` != '' AND `cover_morning_bg` != '' ORDER BY `date_render` ASC LIMIT 10 ");
try {
$stmgroups->execute();
} catch (PDOException $error) {
trigger_error("Ошибка при подключении к базе: {$error}");
}
$rows = $stmgroups->fetchAll(PDO::FETCH_ASSOC);
foreach ($rows as $i => $d) {
$url = "https://site.ru/cover/render?group_id={$d['group_id']}&id_cover={$d['id']}";
$ch = curl_init();
$timeout = 5;
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$file_contents = curl_exec($ch);
curl_close($ch);
}
echo 'ok';
?>