0

「サーバー B」でホストされている .NET Web サービスを使用する「サーバー A」で実行されている PHP アプリケーションがあります。何らかの理由で、「B サーバー」の IIS が応答しないことがあり、PHP Web アプリケーションで、Web サービス呼び出しがあるページをロードするのに正確に 60 秒かかります。クライアントが待つには長すぎるため、これらの 60 秒を変更できるようにしたいと考えています。また、何らかの例外をキャッチする方法があれば、それは素晴らしいことです。

私はこのようなことを試しましたが、Web サービスが応答しない場合、NuSOAP は例外をスローしません。

 try {
     return $client->call("GetTopSellersFromCategory", $params);
 }
 catch (Exception $ex) {
      return "error";
 }

あなたが私に与えることができる助けを前もって感謝します

4

1 に答える 1

0

この問題の別の解決策を探していると、これが見つかりましたhttp://phptoys.com/e107_plugins/content/content.php?content.41

Web サービスで Web メソッドを呼び出す前に、その関数を使用して、Web サーバーが実行されているかどうかを確認するだけです。が実行中の場合、(NuSOAP を使用して) SOAP 呼び出しが行われます。 が停止している場合は、回避策を実行します... ただし、 fsockopen 関数のタイムアウト パラメーターをいつでも調整して、アプリケーションがページをより迅速に処理できるようにすることができます。

于 2011-05-18T17:31:25.513 に答える