欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

webservice - php通过soap调用远程函数接口问题

程序员文章站 2024-02-02 20:31:58
...
最近工作中遇到一个需要使用 php 的 soap 调用远程函数接口查询一个数据量在几亿级别的数据查询操作,那么问题来了,由于数据量的庞大,接口响应的时间势必会增加到一个很可怕的程度,大概是 2 分钟左右,获取这个执行的结果需要的时间会不会超过 soap 的时限?如果有其他的解决方案,该怎么操作呢,目的是获取接口的响应结果。

回复内容:

最近工作中遇到一个需要使用 php 的 soap 调用远程函数接口查询一个数据量在几亿级别的数据查询操作,那么问题来了,由于数据量的庞大,接口响应的时间势必会增加到一个很可怕的程度,大概是 2 分钟左右,获取这个执行的结果需要的时间会不会超过 soap 的时限?如果有其他的解决方案,该怎么操作呢,目的是获取接口的响应结果。

SOAP 是简单对象访问协议(Simple Object Access Protocol 的首字母缩写),用来访问 Web Service。SOAP 在底层通常使用 HTTP 的协议,所以每次调用必然有时间限制(TimeOut)。但是这个限制是 Server 端。

根据你的描述,你是服务的使用者,属于 Client,只要 Server 端能够保证做出正确的响应之前连接不断开,理论上来说你就可以拿到想要的结果。

你可以试试以 “PHP Soap Client Timeout” 为关键词进行搜索。

这是 Google 给出的前2个结果:

  • PHP: SoapClient::SoapClient - Manual

  • web services - PHP SoapClient Timeout - Stack Overflow

建议使用 RESTful 形式的接口。