配置消息处理器上的保持活跃超时设置

<ph type="x-smartling-placeholder"></ph> 您正在查看 Apigee Edge 文档。
转到 Apigee X 文档
信息

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

本文档介绍如何为 Apigee Edge 配置保持活动超时时间 消息处理器。

消息处理器上的保持连接超时允许单个 TCP 连接发送和 从/向后端服务器接收多个 HTTP 请求/响应,而不是打开新的 连接。

消息处理器上的持久连接超时属性的默认值为 60 秒。此超时期限适用于所配置的后端服务器 (位于目标端点配置中)和您的服务器的 ServiceCallout 政策中 API 代理。

消息处理器的保持连接超时时间可以在默认值的基础上增加或减少。 60 秒。可以通过以下方式进行配置:

  • 在 API 代理中 <ph type="x-smartling-placeholder">
      </ph>
    • 在目标端点中
    • ServiceCallout 政策中
  • 在消息处理器上

以下属性可控制消息处理器上的保持活动超时:

属性名称 位置 说明
keepalive.timeout.millis API 代理: <ph type="x-smartling-placeholder">
    </ph>
  • 目标端点
  • ServiceCallout政策

这是消息处理器允许单个 TCP 的最长空闲时间 连接来发送和接收多个 HTTP 请求/响应,而无需打开新的 连接。

默认情况下,此属性采用为 消息处理器上的 HTTPClient.keepalive.timeout.millis 属性,其中 默认值为 60 秒。

如果使用 目标端点或 ServiceCallout 政策,则 只会影响该特定目标服务器的存留时间。

HTTPClient.keepalive.timeout.millis 消息处理器

这是消息处理器允许单个 TCP 的最长空闲时间 连接来发送和接收多个 HTTP 请求/响应,而不是打开一个 每个请求/响应对的新连接。

此属性用于此消息处理器上运行的所有 API 代理。

此属性的默认值为 60 秒。

您可以按照 为消息处理器配置 keepalive 超时 您也可通过在 API 代理级别设置 keepalive.timeout.millis 属性来覆盖此值。

准备工作

在使用本文档中的步骤之前,请确保您了解以下主题:

  • 如果您不熟悉保持连接超时,请参阅keepalive.timeout.millis 房源说明 <ph type="x-smartling-placeholder"></ph> TargetEndpoint 传输属性规范定义一个端点。
  • 如果您不熟悉如何为私有云上的 Edge 配置属性,请参阅 <ph type="x-smartling-placeholder"></ph> 如何配置 Edge

在 API 代理中配置 keep-alive 超时

您可以在 API 代理中的以下位置配置保持活动超时:

  • 目标端点
  • ServiceCallout政策

在 API 代理的目标端点中配置持久连接超时

本部分介绍如何在 API 代理。可通过相应属性配置保持活动超时时间 keepalive.timeout.millis,表示 毫秒。

。 <ph type="x-smartling-placeholder">
  1. 在 Edge 界面中,选择您要在其中配置新 API 代理的特定 API 代理 继续保持活跃状态的超时值
  2. 选择要修改的特定目标端点。
  3. 将属性 keepalive.timeout.millis 添加到 TargetEndpoint 配置中的 <HTTPTargetConnection> 元素。

    例如,要将保持连接超时的超时时间更改为 30 秒,请将 以下代码块:

    <Properties>
      <Property name="keepalive.timeout.millis">30000</Property>
    </Properties>
    

    由于 keepalive.timeout.millis 属性以毫秒为单位,因此 30 秒为 30000

    以下示例展示了如何在目标端点中配置保持连接超时 API 代理的配置:

    使用后端服务器网址配置目标端点的示例

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

    使用目标服务器配置目标端点的示例

    <TargetEndpoint name="default">
      <HTTPTargetConnection>
        <LoadBalancer>
          <Server name="target1" />
          <Server name="target2" />
        </LoadBalancer>
        <Properties>
          <Property name="keepalive.timeout.millis">30000</Property>
        </Properties>
        <Path>/test</Path>
      </HTTPTargetConnection>
    </TargetEndpoint>
    
  4. 保存对 API 代理所做的更改。

在 API 代理的 ServiceCallout 政策中配置保持活动超时

本部分介绍如何在 API 代理的 ServiceCallout 政策。保持活动超时可以 通过 the keepalive.timeout.millis 属性配置,它代表 保持活动超时值(以毫秒为单位)。

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

要使用ServiceCallout keepalive.timeout.millis 属性:

  1. 在 Edge 界面中,选择您要在其中配置新 API 代理的特定 API 代理 保留 ServiceCallout 政策的活跃超时值。
  2. 选择要修改的特定 ServiceCallout 政策。
  3. 将属性 keepalive.timeout.millis 添加到 TargetEndpoint 配置中的 <HTTPTargetConnection> 元素。

    例如,如需将持久连接超时时间更改为 30 秒,请将 以下代码块:

    <Properties>
      <Property name="keepalive.timeout.millis">30000</Property>
    </Properties>
    

    由于 keepalive.timeout.millis 属性以毫秒为单位,因此 30 秒为 30000

    以下示例展示了如何在 您的 API 代理的 ServiceCallout 政策:

    使用后端服务器网址的 ServiceCallout 政策配置示例

    <ServiceCallout name="Service-Callout-1">
      <DisplayName>Service Callout-1</DisplayName>
      <HTTPTargetConnection>
        <Properties>
          <Property name="keepalive.timeout.millis">30000</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="keepalive.timeout.millis">30000</Property>
        </Properties>
        <Path>/test</Path>
      </HTTPTargetConnection>
    </ServiceCallout>
    
  4. 保存对 API 代理所做的更改。

为消息处理器配置保持活动超时

本节介绍如何在消息处理器上配置保持活动超时。通过 可通过相应属性配置 HTTPClient.keepalive.timeout.millis,表示保持活动超时 值(以毫秒为单位)。由于此房源在 则需要使用特殊的语法, conf/http.properties+HTTPClient.keepalive.timeout.millis(如本部分中所述) <ph type="x-smartling-placeholder"></ph> 设置当前被注释掉的令牌 如何配置 Edge

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

要在消息处理器上配置保持活动超时,请执行以下操作:

  1. 在消息处理器计算机上,在编辑器中打开以下文件。如果尚未存在,请创建一个。
    /opt/apigee/customer/application/message-processor.properties
    

    例如,使用 vi 时,请输入以下内容:

    vi /opt/apigee/customer/application/message-processor.properties
    
  2. 将以下格式的一行内容添加到属性文件中,并将 TIME_IN_MILLISECONDS:
    conf/http.properties+HTTPClient.keepalive.timeout.millis=TIME_IN_MILLISECONDS
    

    例如,要将消息处理器上的保持活动超时时间改为 30 秒内添加以下代码行:

    conf/http.properties+HTTPClient.keepalive.timeout.millis=30000
    
  3. 保存更改。
  4. 确保属性文件归 apigee 用户所有,如下所示:
    chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
    
  5. 按如下所示重启消息处理器:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
    
  6. 如果有多个消息处理器,请对所有 消息处理器。

验证消息处理器上的保持活动超时

本部分介绍如何验证是否已成功修改保持活动超时 对消息处理器的要求

尽管使用特殊语法 conf/http.properties+HTTPClient.keepalive.timeout.millis(用于设置 keep-alive) 消息处理器上出现超时,则您需要验证实际属性 已为 HTTPClient.keepalive.timeout.millis 设置新值。

  1. 在消息处理器计算机上,搜索属性 HTTPClient.keepalive.timeout.millis/opt/apigee/edge-message-processor/conf 目录,并检查其是否 新值,如下所示:
    grep -ri "HTTPClient.keepalive.timeout.millis" /opt/apigee/edge-message-processor/conf
    
  2. 如果在消息处理器上成功设置了新的保持活动超时值,则: 以上命令会显示 http.properties 文件中的新值。

    配置保持连接超时后,上述命令的示例结果 到 30 秒如下:

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

    在上面的示例输出中,请注意属性 已使用新值设置 HTTPClient.keepalive.timeout.millishttp.properties”中的“30000”。这表示 消息处理器上的超时时间已成功配置为 30 秒。

  3. 如果您仍然看到属性的旧值 HTTPClient.keepalive.timeout.millis,然后确认您已关注所有 部分步骤 为消息处理器配置 keepalive 超时 正确。如果您遗漏了任何步骤,请再次正确地重复所有步骤。
  4. 如果您仍然无法修改保持活动超时时限,请联系 Google Cloud Apigee Edge 支持