Я разбираюсь в PHP и программировании после долгого перерыва, но в настоящее время создаю свой собственный инструмент для некоторых бизнес-задач.
Иметь базовую настройку целевой страницы с формой, которая собирает информацию о потенциальных клиентах (имя, телефон, адрес, адрес электронной почты и т. Д.).
Введенные данные формы сохраняются в нашей базе данных (с использованием PHP), и затем мы публикуем запрос cURL для вызова API веб-службы, которой мы также отправляем эти данные.
Обратите внимание, что около 35% наших клиентов, сохраненных в базе данных, по какой-то причине не отображаются в этом веб-сервисе.Прошел несколько отведений в БД и по отдельности сделал запрос API-прокрутки, и на этот раз большинство пропущенных успешно прошло, так что это не проблема с самими данными.
Я думаюэто связано со сценарием, который мы связали с нашей формой целевой страницы и проблемами с производительностью.Читали на curl_multi_exec: https://webkul.com/blog/simultaneous-curl-requests-in-php/
Однако, это действительно поможет?Поскольку каждая отправка формы выполняется отдельно, поэтому все эти запросы выполняются в отдельных потоках.
Или лучше использовать , а не делать запрос API после каждой отправки отдельной формы, вместо этого устанавливайте задание cron каждые 2-3 часа, чтобы собирать интересы за последний час и выполнять пакетТогда запрос API к ним?
Также верно, что, поскольку каждая отправка формы и запрос скручивания являются отдельными, curl_close($curl);
не следует добавлять в конце?
Есть что-то действительно простое, как этона данный момент:
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_URL => "https://APIURL/{$data}",
CURLOPT_POST => 1,
CURLOPT_POSTFIELDS => $xml
]);
$resp = curl_exec($curl);
$http_status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);