<ph type="x-smartling-placeholder"></ph>
您正在查看 Apigee Edge 文档。
转到
Apigee X 文档。 信息
本文档介绍如何为 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">
|
这是消息处理器允许单个 TCP 的最长空闲时间 连接来发送和接收多个 HTTP 请求/响应,而无需打开新的 连接。 默认情况下,此属性采用为
消息处理器上的 如果使用
目标端点或 |
HTTPClient.keepalive.timeout.millis |
消息处理器 |
这是消息处理器允许单个 TCP 的最长空闲时间 连接来发送和接收多个 HTTP 请求/响应,而不是打开一个 每个请求/响应对的新连接。 此属性用于此消息处理器上运行的所有 API 代理。 此属性的默认值为 您可以按照
为消息处理器配置 keepalive 超时
您也可通过在 API 代理级别设置 |
准备工作
在使用本文档中的步骤之前,请确保您了解以下主题:
- 如果您不熟悉保持连接超时,请参阅
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
,表示
毫秒。
- 在 Edge 界面中,选择您要在其中配置新 API 代理的特定 API 代理 继续保持活跃状态的超时值
- 选择要修改的特定目标端点。
-
将属性
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>
- 保存对 API 代理所做的更改。
在 API 代理的 ServiceCallout 政策中配置保持活动超时
本部分介绍如何在
API 代理的 ServiceCallout
政策。保持活动超时可以
通过 the keepalive.timeout.millis
属性配置,它代表
保持活动超时值(以毫秒为单位)。
要使用ServiceCallout
keepalive.timeout.millis
属性:
- 在 Edge 界面中,选择您要在其中配置新 API 代理的特定 API 代理
保留
ServiceCallout
政策的活跃超时值。 - 选择要修改的特定
ServiceCallout
政策。 - 将属性
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>
- 保存对 API 代理所做的更改。
为消息处理器配置保持活动超时
本节介绍如何在消息处理器上配置保持活动超时。通过
可通过相应属性配置
HTTPClient.keepalive.timeout.millis
,表示保持活动超时
值(以毫秒为单位)。由于此房源在
则需要使用特殊的语法,
conf/http.properties+HTTPClient.keepalive.timeout.millis
(如本部分中所述)
<ph type="x-smartling-placeholder"></ph>
设置当前被注释掉的令牌
如何配置 Edge。
要在消息处理器上配置保持活动超时,请执行以下操作:
- 在消息处理器计算机上,在编辑器中打开以下文件。如果尚未存在,请创建一个。
/opt/apigee/customer/application/message-processor.properties
例如,使用
vi
时,请输入以下内容:vi /opt/apigee/customer/application/message-processor.properties
- 将以下格式的一行内容添加到属性文件中,并将
TIME_IN_MILLISECONDS:
conf/http.properties+HTTPClient.keepalive.timeout.millis=TIME_IN_MILLISECONDS
例如,要将消息处理器上的保持活动超时时间改为
30
秒内添加以下代码行:conf/http.properties+HTTPClient.keepalive.timeout.millis=30000
- 保存更改。
- 确保属性文件归
apigee
用户所有,如下所示:chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
- 按如下所示重启消息处理器:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- 如果有多个消息处理器,请对所有 消息处理器。
验证消息处理器上的保持活动超时
本部分介绍如何验证是否已成功修改保持活动超时 对消息处理器的要求
尽管使用特殊语法
conf/http.properties+HTTPClient.keepalive.timeout.millis
(用于设置 keep-alive)
消息处理器上出现超时,则您需要验证实际属性
已为 HTTPClient.keepalive.timeout.millis
设置新值。
- 在消息处理器计算机上,搜索属性
HTTPClient.keepalive.timeout.millis
在/opt/apigee/edge-message-processor/conf
目录,并检查其是否 新值,如下所示:grep -ri "HTTPClient.keepalive.timeout.millis" /opt/apigee/edge-message-processor/conf
-
如果在消息处理器上成功设置了新的保持活动超时值,则: 以上命令会显示
http.properties
文件中的新值。配置保持连接超时后,上述命令的示例结果 到
30
秒如下:/opt/apigee/edge-message-processor/conf/http.properties:HTTPClient.keepalive.timeout.millis=30000
在上面的示例输出中,请注意属性 已使用新值设置
HTTPClient.keepalive.timeout.millis
“http.properties
”中的“30000
”。这表示 消息处理器上的超时时间已成功配置为30
秒。 - 如果您仍然看到属性的旧值
HTTPClient.keepalive.timeout.millis
,然后确认您已关注所有 部分步骤 为消息处理器配置 keepalive 超时 正确。如果您遗漏了任何步骤,请再次正确地重复所有步骤。 - 如果您仍然无法修改保持活动超时时限,请联系 Google Cloud Apigee Edge 支持。