2

我最近为使用 PHPs SoapServer 的 PHP Web 服务创建了一个 Java 前端。

我的应用程序正在执行长时间运行的数据同步,根据我从 PHP 中了解到的情况,由于max_execution_time限制,我准备好关闭连接。

但是我从来没有遇到任何错误,就好像 SoapServer 实例永远运行一样。

我最好的猜测是,我并不真正了解 SoapServer 是如何工作的。那么,任何人都可以对此有所了解吗?SoapServer 不受max_execution_time?

编辑:在我的测试max_execution_time中设置为 5 分钟,但我的程序运行了几个小时。

4

1 回答 1

4

如果max_execution_time在您的 php.ini 中或通过使用ini_set()set_time_limit()在您的脚本中将 设置为 0,那么将没有限制。这可能是原因吗?

编辑:另外,我刚刚在手册中注意到这一点:

注意: set_time_limit() 函数和配置指令 max_execution_time 只影响脚本本身的执行时间。在确定脚本运行的最长时间时,不包括在脚本执行之外发生的活动所花费的任何时间,例如使用 system() 的系统调用、流操作、数据库查询等。在测量时间是真实的 Windows 上,情况并非如此。

也许您没有被削减,因为大部分时间都花在了流数据或执行查询上,根据这一点,这不计入时间限制。

于 2009-12-11T09:49:25.003 回答