Message Processor の接続タイムアウトを構成する

<ph type="x-smartling-placeholder"></ph> 現在、Apigee Edge のドキュメントが表示されています。
Apigee X のドキュメント
詳細

<ph type="x-smartling-placeholder">

このドキュメントでは、Apigee Edge Message Processor の接続タイムアウトを構成する方法について説明します。

接続タイムアウトは、Message Processor が確立のために待機する時間を表します。 ターゲット サーバーに接続します。接続タイムアウト プロパティのデフォルト値は、 Message Processor は 3 秒です。このタイムアウト時間は バックエンド サーバーをターゲット エンドポイントの構成と API プロキシの ServiceCallout ポリシー。

Message Processor の接続タイムアウトは、必要に応じてデフォルト値の 3 秒から増減できます。次のように構成できます。

  • API プロキシの場合 <ph type="x-smartling-placeholder">
      </ph>
    • ターゲット エンドポイント
    • ServiceCallout ポリシー内
  • Message Processor
で確認できます。 <ph type="x-smartling-placeholder">

次のプロパティは、Message Processor の接続タイムアウトを制御します。

プロパティ名 場所 説明
connect.timeout.millis API プロキシ: <ph type="x-smartling-placeholder">
    </ph>
  • ターゲット エンドポイント
  • ServiceCalloutのポリシー

これは、Message Processor がターゲット サーバーへの接続を待機する最大時間です。

デフォルトでは、このプロパティは Message Processor の HTTPClient.connect.timeout.millis プロパティ デフォルト値は 3 秒です。

このプロパティが、関連付けられているターゲット サーバーの新しいタイムアウト値で変更された場合 その場合、そのターゲット サーバーの接続時間のみが影響を受けます。

HTTPClient.connect.timeout.millis Message Processor

これは、Message Processor がターゲット サーバーに接続するまで待機する最大時間です。

このプロパティは、この Message Processor で実行されるすべての API プロキシで使用されます。

このプロパティのデフォルト値は 3 秒です。

このプロパティは、 Message Processor で接続タイムアウトを構成するをご覧ください。この値を上書きすることもできます。 connect.timeout.millis プロパティを API プロキシレベルで設定します。

始める前に

このドキュメントの手順を使用する前に、次のトピックを理解しておいてください。

API プロキシでの接続タイムアウトの構成

接続タイムアウトは、API プロキシの次の場所で構成できます。

  • ターゲット エンドポイント
  • ServiceCalloutのポリシー

API プロキシのターゲット エンドポイントでの接続タイムアウトの構成

このセクションでは、API プロキシのターゲット エンドポイントで接続タイムアウトを構成する方法について説明します。 接続タイムアウトは、プロパティ connect.timeout.millis で構成できます。 これは接続タイムアウト値をミリ秒単位で表します。

<ph type="x-smartling-placeholder">で確認できます。 <ph type="x-smartling-placeholder">
  1. Edge UI で、新しい API プロキシを構成する特定の API プロキシを選択します。 接続タイムアウト値を設定します
  2. 変更する特定のターゲット エンドポイントを選択します。
  3. 適切な値を持つプロパティ connect.timeout.millis TargetEndpoint 構成の <HTTPTargetConnection> 要素。

    たとえば、接続タイムアウトを 5 秒に変更するには、 次のコードブロックを実行します。

    <Properties>
      <Property name="connect.timeout.millis">5000</Property>
    </Properties>
    

    connect.timeout.millis プロパティはミリ秒単位であるため、 5 秒は 5000 です。

    次の例は、ターゲット エンドポイントで接続タイムアウトを構成する方法を示しています。 API プロキシの構成:

    バックエンド サーバーの URL を使用したターゲット エンドポイントの構成例

    <TargetEndpoint name="default">
      <HTTPTargetConnection>
        <URL>https://mocktarget.apigee.net/json</URL>
        <Properties>
          <Property name="connect.timeout.millis">5000</Property>
        </Properties>
      </HTTPTargetConnection>
    </TargetEndpoint>
    

    ターゲット サーバーを使用したターゲット エンドポイントの構成例

    <TargetEndpoint name="default">
      <HTTPTargetConnection>
        <LoadBalancer>
          <Server name="target1" />
          <Server name="target2" />
        </LoadBalancer>
        <Properties>
          <Property name="connect.timeout.millis">5000</Property>
        </Properties>
        <Path>/test</Path>
      </HTTPTargetConnection>
    </TargetEndpoint>
    
    <ph type="x-smartling-placeholder">
  4. API プロキシに加えた変更を保存します。

API プロキシの ServiceCallout ポリシーで接続タイムアウトを構成する

このセクションでは、ServiceCallout で接続タイムアウトを構成する方法について説明します。 有効にする必要があります。接続タイムアウトは connect.timeout.millis プロパティ。接続時刻の値を表します。 ミリ秒単位です。

<ph type="x-smartling-placeholder">で確認できます。 <ph type="x-smartling-placeholder">

ServiceCallout ポリシーで接続タイムアウトを構成するには、 connect.timeout.millis プロパティ:

  1. Edge UI で、新しい API プロキシを構成する特定の API プロキシを選択します。 ServiceCallout ポリシーの接続タイムアウト値。
  2. 変更する ServiceCallout ポリシーを選択します。
  3. 適切な値を持つプロパティ connect.timeout.millisTargetEndpoint 構成の <HTTPTargetConnection> 要素。

    たとえば、接続タイムアウトを 5 秒に変更するには、次のコードブロックを追加します。

    <Properties>
      <Property name="connect.timeout.millis">5000</Property>
    </Properties>
    

    connect.timeout.millis プロパティはミリ秒単位であるため、 5 秒は 5000 です。

    次の例は、Google Cloud コンソールで接続のタイムアウトを構成する方法を示しています。 API プロキシの ServiceCallout ポリシー:

    バックエンド サーバーの URL を使用した ServiceCallout ポリシー構成の例

    <ServiceCallout name="Service-Callout-1">
      <DisplayName>Service Callout-1</DisplayName>
      <HTTPTargetConnection>
        <Properties>
          <Property name="connect.timeout.millis">5000</Property>
        </Properties>
        <URL>https://mocktarget.apigee.net/json</URL>
      </HTTPTargetConnection>
    </ServiceCallout>
    

    ターゲット サーバーを使用した ServiceCallout ポリシー構成の例

    <ServiceCallout enabled="true" name="Service-Callout-1">
      <DisplayName>Service Callout-1</DisplayName>
      <Response>calloutResponse</Response>
      <HTTPTargetConnection>
        <LoadBalancer>
          <Server name="target1" />
          <Server name="target2" />
        </LoadBalancer>
        <Properties>
          <Property name="connect.timeout.millis">5000</Property>
        </Properties>
      <Path>/test</Path>
      </HTTPTargetConnection>
    </ServiceCallout>
    
    <ph type="x-smartling-placeholder">
  4. API プロキシに加えた変更を保存します。

Message Processor で接続タイムアウトを構成する

このセクションでは、Message Processor で接続タイムアウトを構成する方法について説明します。 接続タイムアウトはプロパティから構成できます conf_http_HTTPClient.connect.timeout.millis: 接続タイムアウトを表します。 ミリ秒単位の値で示され、 で説明される構文 Edge の構成方法をご覧ください。

<ph type="x-smartling-placeholder">で確認できます。 <ph type="x-smartling-placeholder">

Message Processor で接続タイムアウトを構成するには、次の操作を行います。

  1. Message Processor マシンで、次のファイルをエディタで開きます。オンになっていない場合 作成します。
    /opt/apigee/customer/application/message-processor.properties
    

    たとえば、vi を使用してファイルを開くには、次のようにします。 次のように入力します。

    vi /opt/apigee/customer/application/message-processor.properties
    
  2. プロパティ ファイルに次の形式の行を追加します。 TIME_IN_MILLISECONDS:
    conf_http_HTTPClient.connect.timeout.millis=TIME_IN_MILLISECONDS
    

    たとえば、Message Processor の接続タイムアウトを 5 秒に変更するには、次のようにします。 次の行を追加します。

    conf_http_HTTPClient.connect.timeout.millis=5000
    
  3. 変更を保存します。
  4. 以下に示すように、プロパティ ファイルの所有者が apigee ユーザーであることを確認します。
    chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
    
  5. 次のように Message Processor を再起動します。
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
    
  6. 複数の Message Processor がある場合は、すべての Message Processor に対して上記の手順を繰り返します 決済代行業者。

Message Processor の接続タイムアウトの確認

このセクションでは、接続タイムアウトが正常に変更されたことを確認する方法について説明します。 Message Processor 用のものです。

トークン conf_http_HTTPClient.connect.timeout.millis を使用して 接続タイムアウトが発生する場合は、実際のプロパティが HTTPClient.connect.timeout.millis に新しい値が設定されました。

  1. Message Processor マシンで、次のプロパティを検索します。 HTTPTransport.connect.timeout.millis/opt/apigee/edge-message-processor/conf ディレクトリに移動して、 次のように新しい値が設定されます。
    grep -ri "HTTPClient.connect.timeout.millis" /opt/apigee/edge-message-processor/conf
    
  2. Message Processor で新しい接続タイムアウト値が正常に設定されると、 上記のコマンドは、http.properties ファイルの新しい値を表示します。

    接続タイムアウトを 5 秒は次のとおりです。

    /opt/apigee/edge-message-processor/conf/http.properties:HTTPClient.connect.timeout.millis=5000
    

    上記の出力例では、プロパティ HTTPClient.connect.timeout.millishttp.properties で新しい値 5000 が設定されました。これは、 メッセージで接続タイムアウトが 5 秒に正常に構成されていることを確認できます。 データ処理者

  3. プロパティ HTTPClient.connect.timeout.millis に古い値が引き続き表示される場合は、 記載されているすべての手順に Message Processor の接続タイムアウトの構成 確認します。途中を抜けた場合は、すべての手順を正しく繰り返します。
  4. それでも接続タイムアウトを変更できない場合は、Google Cloud Apigee Edge サポートにお問い合わせください。