我正在研究一些对Web服务进行SOAP调用的代码。在服务器端进行更改时,我需要非常频繁地刷新WSDL,因此我在构造函数的选项中使用了'cache_wsdl' => WSDL_CACHE_NONE
。服务器端的更改已经解决,我现在想要缓存WSDL。我在单个请求上做了一些快速计时,看看是否有任何性能提升,并没有真正看到任何。我理解WSDL_CACHE_DISK
会在我的/ tmp目录中保存wsdl的副本,这会保存请求,对我来说很有意义。 但我不确定WSDL_CACHE_MEMORY
或WSDL_CACHE_BOTH
如何更改行为?请求wsdl_cache_memory
将xml或已解析的wsdl存储在内存中...请求之间...一天? CLI和Web之间有何不同?我找不到任何关于这些标志如何影响行为的文档。
答案 0 :(得分:0)
进一步研究..尝试在php.ini中设置这些
soap.wsdl_cache_dir [/temp] # make sure this folder is writeable by php (if using disk cache)
# otherwise give the web server access to it
# check what webserver has for user for example _www or www-data
# Example on MAC:
# chown -R $(whoami):_www /temp
soap.wsdl_cache_ttl [seconds] # Time To Live, how long it is cached