我使用GuzzleHttp库从服务器端代码调用REST API。每当我从本地机器上运行它时,它运行正常,给出快速响应。如果我在VPS托管服务器上运行它,它需要一段时间(约30秒),但它给出了正确的答案。我试着调试它需要这么长时间,但是无法在代码中理解和调试这些行:return Promise \ _no_for($ handler($ request,$ options));它位于guzzlehttp \ guzzle \ src \ Client.php文件中(第277行)
我不熟悉HTTP进程,我无法弄清楚是什么造成了不同。两种环境中的代码都是一样的。我使用php版本7.1.9在我的本地机器上使用WAMP。 VPS托管环境具有Windows Server 2016和php版本7.2.14。如果我从VPS服务器的浏览器运行REST API,它也很快。
谁能告诉我这行代码后面会发生什么?
您的远程计算机没有安装PHP curl扩展。 Guzzle根据系统中安装的扩展程序检测可用的处理程序,因此可能使用较慢的处理程序之一,或者同时执行多个请求的处理程序。