Estou trabalhando em um aplicativo da web PHP e preciso executar algumas operações de rede na solicitação, como buscar alguém no servidor remoto com base na solicitação do usuário.
É possível simular o comportamento assíncrono em PHP, visto que tenho que passar alguns dados para uma função e também preciso de saída dela.
Meu código é como:
<?php
$data1 = processGETandPOST();
$data2 = processGETandPOST();
$data3 = processGETandPOST();
$response1 = makeNetworkCall($data1);
$response2 = makeNetworkCall($data2);
$response3 = makeNetworkCall($data3);
processNetworkResponse($response1);
processNetworkResponse($response2);
processNetworkResponse($response3);
/*HTML and OTHER UI STUFF HERE*/
exit;
?>
Cada operação de rede leva cerca de 5 segundos para ser concluída, adicionando um total de 15 segundos ao tempo de resposta do meu aplicativo, desde que eu faça 3 solicitações.
A função makeNetworkCall () apenas faz uma solicitação HTTP POST.
O servidor remoto é uma API de terceiros, então não tenho nenhum controle sobre ele.
PS: Por favor, não responda dando sugestões sobre AJAX ou outras coisas. Atualmente, estou procurando se posso fazer isso através do PHP pode ser com uma extensão C ++ ou algo parecido.
CURL
para disparar solicitações e buscar alguns dados da web ...