PHP solicitar un servicio HTTP, generalmente se bloquea, si hay múltiples peticiones HTTP necesitan la ejecución en serie, una solicitud por uno, puede utilizar esta biblioteca para engullir php simultáneamente enviar múltiples peticiones HTTP asíncronas.
El tiempo de respuesta depende de los resultados del tiempo de respuesta máximo a esa petición
Código de ensayo es el siguiente:
$ cliente = nueva \ GuzzleHttp \ Cliente (); // 发送一个异步请求 $ solicitud = nueva \ GuzzleHttp \ Psr7 \ Request ( 'GET', 'http://www.sopans.com' ); $ solicitud2 = nueva \ GuzzleHttp \ Psr7 \ Request ( 'GET', 'http://www.sopans.com/laruence' ); $ petición3 = nueva \ GuzzleHttp \ Psr7 \ Request ( 'GET', 'http://www.sopans.com/about' ); $ promesa = $ cliente -> SendAsync ( $ solicitud ) ->eco 111 ; }); $ promesa = $ cliente -> SendAsync ( $ solicitud2 ) -> a continuación ( función ( $ respuesta ) uso ( $ cliente , $ petición3 ) { $ cliente -> SendAsync ( $ petición3 ) -> a continuación ( función ( $ res ) { echo 444 ; }); echo 222 ; }); eco 333 ; $ promesa -> wait ();
Volver 333 111 444 222, el siguiente código se ejecuta en primer lugar, en respuesta a la solicitud después de realizar el código local para lograr el efecto asíncrono
compositor de instalación
compositor requerir guzzlehttp / Guzzle