【发布时间】:2017-04-14 13:40:24
【问题描述】:
我正在连接到网络服务以获取一些数据。我有一个包含大约 20 万个作业的请求队列,一个工作人员正在处理它。处理时间为每秒 2-3 次调用。大约 500-1000 次调用后,它开始收到 SoapFault 异常并显示以下消息:Could not connect to host。即使出现此错误,我也能够正确 ping 网络服务服务器。
当我禁用soap缓存时,问题仍然存在,但错误变为Parsing WSDL: Couldn't load from 'http://thewebservice.com/method/Service.asmx?WSDL' : failed to load external entity
连接代码:
$client = new SoapClient('http://thewebservice.com/method/Service.asmx?WSDL');
$response = $client->__soapCall('method name', $parameters)
我与:
- PHP 7.0.11
- Lumen (5.2.9)(Laravel 组件 5.2.*)
【问题讨论】:
-
您是否为每次调用创建一个新的 SoapClient 实例?这将为每个新呼叫保持连接打开。
标签: php laravel soap soap-client lumen