Php 如何同时运行多个SOAP调用

Php 如何同时运行多个SOAP调用,php,multithreading,soap,Php,Multithreading,Soap,我的PHP应用程序中有多个SOAP请求,这些请求被发送到不同的服务器。我希望两个请求都能在目标服务器上相同的时间被接收,假设目标服务器具有相同的延迟。我还希望在收到每个呼叫的结果后尽快对其进行处理,而不必等待两个响应 目前,我有以下几点: $firstServerResponse = $mySoapClient->getPrice($priceRequest); $secondServerResponse = $mySecondSoapClient->getPrice($price

我的PHP应用程序中有多个SOAP请求,这些请求被发送到不同的服务器。我希望两个请求都能在目标服务器上相同的时间被接收,假设目标服务器具有相同的延迟。我还希望在收到每个呼叫的结果后尽快对其进行处理,而不必等待两个响应

目前,我有以下几点:

$firstServerResponse = $mySoapClient->getPrice($priceRequest); 
$secondServerResponse = $mySecondSoapClient->getPrice($priceRequest); 

//Processing of results
在这种情况下,对第二个SOAP服务器的调用以及对结果的后续处理将仅在收到第一个响应时执行


在PHP中是否可以设置回调函数,这样我就不需要等待两个响应,然后才能处理它们各自的结果?

您可以使用线程。请参阅文档:

SOAP调用的频率很高,因此目前可能的解决方案是两个CRON作业,它们将同时运行两个PHP脚本,每个脚本运行不同的SOAP调用并将结果写入数据库。可以执行第三个脚本来处理来自DB的最后一组结果。有更好的建议吗?这个答案没有描述任何与这个问题相关的内容。它可能也很难安装,因为它需要一个线程安全的PHP版本,并且能够安装PECL扩展。