进行Web服务调用后,w3wp.exe内存使用率仍然很高

时间:2015-06-18 23:31:59

标签: php web-services w3wp

我已经使用PHP应用程序和.asmx Web服务应用程序设置了一台服务器。

我的PHP应用程序经常调用此.asmx文件中的Web服务函数。它们又从数据库中检索数据以在PHP应用程序中使用。这是我的PHP代码:

public function callService($file, $web_service, $parameters){
    if(defined("WEB_SERVICES_PATH")){
        try{
            $wsdl = WEB_SERVICES_PATH.$file."?wsdl";
            $client = new SoapClient ($wsdl, array('cache_wsdl' => WSDL_CACHE_NONE) );                
            $result = $client->{$web_service}($parameters)->{$web_service."Result"};
            return $result;
        }
        catch(Exception $e){
          //handle error
        }
    }
}

在某些情况下,我注意到某些Web服务调用会导致w3wp进程占用大量内存。在某些情况下,该过程将从大约80,000KB开始,但随后增长到大约800,000KB

此外,除非我将其杀死或重新启动IIS,否则该过程似乎会持续在800,000kb左右。

我实际上有两个问题。首先,为什么在Web服务调用后内存不会被释放?其次,哪些因素会导致w3wp进程扼杀这么多内存?

0 个答案:

没有答案