2

ここでは、サードパーティが提供する Web サービスにかなり奇妙な (IMO) 問題があります。

ライブサーバーで Web サービスを呼び出すと、すべてが期待どおりに機能します。開発セットアップで呼び出すと、が返されることもあれ503 - Service unavailableば、機能することもあります。断続的....これらのテストは両方とも同じクライアントから行われたため、ネットワークレベルの問題ではないと思います。

さて、奇妙なことに、Web サービス呼び出しの前に行にブレークポイントを配置し、呼び出しをステップ オーバーすると、機能します。このブレークポイントを超えてコード (F5) を実行しても、成功することができます。呼び出しの前にa を追加しSystem.Threading.Thread.Sleep(1000);ても (ある種のブレークポイントをシミュレートするため)、効果はありません。

私はリモート サーバーにアクセスできませんが、そのサーバー 2003/IIS 6.0 は知っています。また、Web サービス インターフェイスが接続するシステムを提供する会社は、サーバーやソフトウェアに問題はないと主張しています。

だから私が真剣に指摘する前に、誰かが以前にこのようなことを経験したか、または私が試すことができる何か他のことはありますか?

4

3 に答える 3

1

結局、これは、私のシステムとリモートシステムの間の上流にある透過的な(IPスプーフィング)プロキシの問題が原因でした。プロキシは503を返していましたが、ターゲットホストを装っていました。

私はこれをまぐれで見つけることができましたが、このタイプの問題を探す場合、この問題を指摘するために私に飛び出すhttpヘッダー/ rawダンプには何もないので、どうやってこれを特定できたでしょうか?

于 2011-06-02T10:00:21.403 に答える
0

DoS 攻撃からサーバーを保護するために、サーバーが同じクライアントからの短期間に複数の要求を受け入れない可能性があります。

このような場合、クライアントはスロットリング制限をリクエストに組み込む必要があります。そのため、サービス プロバイダーに再度確認してください。

于 2011-05-30T21:13:53.100 に答える
0

503サーバーからのエラーです。クライアントから送信されることはありません。

これを「証明」する必要がある場合は、Fiddlerなどを使用してネットワーク トラフィックを監視する必要があります。

于 2011-05-30T19:16:15.240 に答える