Webサービスのリモートデバッグとタイムアウト動作原理の分析

Webサービスのリモートデバッグとタイムアウト動作原理の分析

Webサービスのリモートデバッグ

.NET では、WEBSERVICE のリモート デバッグ機能はデフォルトでオフになっています。プログラムをリモートでデバッグする必要がある場合は、この機能をオンにする必要があります。WEBSERVICE プロジェクトの web.config の <system.web> 構成セクションの下に構成を追加するだけです。コードは次のとおりです。

 <システム.web>
    <コンパイルデバッグ="true" />
  <ウェブサービス>
     <プロトコル>
      <名前を追加="HttpSoap"/>
      <名前を追加="HttpPost"/>
      <名前を追加="HttpGet"/>
      <add name="ドキュメント"/>
     </プロトコル>
   </ウェブサービス>
 </システム.web>

WebService タイムアウト操作

一部の WebService メソッドの実行には長い時間がかかります。デフォルトの時間を超えると、システムからエラーが報告されます。現時点では、次の操作を実行できます。

1. app.config ファイルを変更し、次のコードを追加します。

<httpRuntime executionTimeout="600" />

リクエスト実行タイムアウトは600秒です(デフォルトは110秒です)

2. Webサービスのタイムアウトプロパティを設定する

XML Web サービスへの同期呼び出しのタイムアウト (ミリ秒単位)。デフォルトは 100000 ミリ秒です。

WebServiceTest.Service1 src = 新しい TestWinApp.WebServiceTest.Service1();

src.Url = txtアドレス.テキスト;

src.Timeout = -1; //1120 * 1000; 単位はミリ秒です

XML Web サービス クライアントが同期 XML Web サービス要求が完了するまで待機する時間 (ミリ秒単位) を示します。

ヒント: Timeout プロパティを Timeout.Infinite (=-1) に設定すると、要求にタイムアウトがないことを示します。 XML Web サービス クライアントが Timeout プロパティをタイムアウトなしに設定できる場合でも、Web サーバーはサーバー側で要求をタイムアウトにすることができます。

システムは、上記の 2 つの設定のうち小さい方を操作タイムアウト期間として使用します。

IIS は Web サービス要求のサイズとタイムアウトを制限します

デフォルトのリクエストサイズは2Mを超えてはなりません。リセットするには、web.configで、

<httpRuntime executionTimeout="600" maxRqeustLength="32768"/>

同時に、IIS の既定の Web サイト コントロール インターフェイスでは「接続タイムアウト」を設定できます。デフォルト値は 120 秒です。

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Python suds アクセス Web サービス実装
  • Python3 Webサービスインターフェーステストコードの詳細な説明
  • vs2019でWebServiceサービスを作成する実装
  • SpringBoot で CXF を使用して WebService を統合する方法
  • JavaはWebサービスを呼び出して返されたXML文字列を解析します。
  • CXF WebService インターフェースを呼び出す Java の 2 つの例
  • Pythonでsudsを使用してWebサービスインターフェースを呼び出す方法
  • APIとWebServiceのクロスドメイン問題に対する完璧なソリューション

<<:  moment.jsの時間と日付の処理の詳細な説明

>>:  ReactとReduxの配列処理の説明

推薦する

MySQL5.7.27-winx64 バージョン win10 のダウンロードとインストールのチュートリアル図

MySQL 5.7 のインストール私たちは学校で MySQL データベースを学んでいます。先生は私た...

JavaScriptオブジェクト指向について学ぼう

目次JavaScript プロトタイプチェーンオブジェクトプロトタイプトップレベルのプロトタイプOb...

MySQL 8.0 Windows zip パッケージ版の詳細なインストール手順

MySQL 8.0 Windows zipのインストール手順は次のように紹介されています。準備する:...

MySQL InnoDB row_id 境界オーバーフロー検証方法の手順

背景クラスメートと row_id の境界問題について話し合ったので、ここで詳しく説明します。 Inn...

MySQL列挙型のテスト例

プロジェクトを開発しているとき、支払い済み、支払済み、クローズ済み、返金済みなどの注文ステータスなど...

jsはreduceメソッドを使用してコードをよりエレガントにします

序文実際のプロジェクトでは、最も一般的な処理は計算とループロジックである可能性があります。配列でre...

Linux 型バージョン メモリ ディスク クエリ コマンド紹介

1. まず、Linux システムのバージョン内容について概要を説明します。 1. カーネルバージョン...

MySQL ツリー構造テーブルの設計と最適化に関する簡単な説明

序文多くの管理・オフィスシステムでは、ツリー構造がいたるところで見られます。たとえば、「部門」や「機...

Nginx を使用して IP アドレスが悪意を持って解決されるのを防ぐ方法

Nginxを使用する目的Alibaba Cloud ECS クラウド サーバーを使用して、まずは著者...

vue-cli でレスポンシブ レイアウトを実装する方法

フロントエンド開発を行うと、PCとモバイル端末の適応に必然的に直面することになります。このような問題...

MySQL msiバージョンのダウンロードとインストールの初心者向けの詳細なグラフィックチュートリアル

目次1. MySQL msiバージョンをダウンロードする2. インストール3. 環境変数を設定する1...

Vue uniapp はセグメンター効果を実現します

この記事では、セグメンター効果を実現するためのvue uniappの具体的なコードを参考までに共有し...

MySQL 5.7 のキーワードと予約語の詳細な説明

序文MySQL と Oracle のキーワードはまったく同じではありません。Oracle データベー...

Docker を使用して Nginx+Flask+Mongo アプリケーションをデプロイする

サーバーにはNginx、データベースサポートにはMongo、Python言語のWebフレームワークに...