2

ASP.NETWebアプリケーションからASP.NETWebサービスを呼び出そうとすると、次のエラーが発生します。これは、WebサービスとWebアプリケーションが同じファーム上/同じロードバランサーの背後にあるためだと思います。

A connection attempt failed because the connected party did not properly
respond after a period of time, or established connection failed because
connected host has failed to respond [IP Address removed]:80

このエラーは、ローカルマシンのWebアプリからファームのWebサービスを呼び出した場合、またはファームのWebアプリからローカルマシンのWebサービスを呼び出した場合には発生しません。

このエラーが発生している理由はありますか?

4

3 に答える 3

2

私の問題の解決策は、ロードバランサーでNATをオンにすることでした。

要求はファーム内のサーバーからロードバランサーに対して行われ、ロードバランサーはその要求をファーム内のサーバーの1つ(場合によってはそれを要求したのと同じサーバー)に送信します。問題は、リクエストを処理していたサーバーが、ロードバランサーに返されるのではなく、「リクエストしているクライアント」に直接レスポンスを返そうとするため、リクエストを行ったサーバーは、応答がないために応答を無視することでした。ロードバランサーによって送信されます。NATをオンにすると、すべての応答がロードバランサーに返送され、次にロードバランサーが応答を元のクライアントに送信します。

于 2009-06-17T20:44:34.380 に答える
0

これは単なる推測ですが、Webサーバーは実際に使用されているIPアドレスを確認できますか?ロードバランサーの背後にあるファームにある場合、そのIPはロードバランサー自体またはファイアウォールまたはプロキシサーバーによってブロックされている可能性があります。

pingリモートデスクトップとIPアドレスを介してWebサーバーにアクセスできますか?

于 2009-05-21T16:19:14.547 に答える
0

ファームノードのTCP/IPスタックは、コールをロードバランサーのIPアドレスにルーティングしませんが、これを、コールを行っている特定のファームノードの127.0.0.1:80のローカルコールに自動的に変換します。 。このケースを処理するようにWebサーバーが設定されていることを確認してください。

于 2009-05-24T08:47:33.597 に答える