1

バックエンドとして WCF を使用する Silverlight プロジェクトに取り組んでいます。このプロジェクトでは、IoC に Autofac を使用します (フロントエンドとバックエンドの両方)。

WCF サービスは IIS7 でホストされ、正しく構成されています (エンドポイント、aspnetcompatibilityenabled など)。

VS 2012 でプロジェクトをデバッグするときに、ランダム サービスが情報なしで ServiceActivationException をスローすることがあります。再構築で問題が解決する場合もあれば、IISReset で問題が解決する場合もあれば、wcftestclient を使用してサービスを呼び出す場合もあります。ただし、最後の解決策は常に機能します..

誰かが同様の問題を経験しましたか?

必要に応じて、お気軽にお問い合わせください。

サンクス!

4

1 に答える 1

2

この問題の原因がわかりました。IIS で複数の WCF サービスをホストする VM で作業していました。VM には 2 ギガの RAM しか割り当てられていませんでした。後者はパフォーマンスの問題を引き起こしませんでしたが、サービスをホストする w3p プロセスの問題でした。

空きメモリ (43732992 バイト) が合計メモリの 5% 未満であるため、メモリ ゲートのチェックに失敗しました。その結果、着信要求に対してサービスを利用できなくなります。これを解決するには、マシンの負荷を減らすか、serviceHostingEnvironment 構成要素の minFreeMemoryPercentageToActivateService の値を調整します。

私のサービスは、メモリが不足している場合にのみ失敗しました。構成要素を追加し、仮想マシンの RAM メモリをアップスケーリングすると、問題が修正されました。

于 2012-12-15T07:59:42.193 に答える