查看 Apigee Edge 說明文件。
前往
Apigee X說明文件。 資訊
本文說明如何為 Apigee Edge 設定保持運作逾時 訊息處理器。
「訊息處理器」的保持運作逾時功能可讓一個 TCP 連線傳送和 接收來自/傳送至後端伺服器的多個 HTTP 要求/回應,而不是開啟新的 連線至每個要求/回應組合。
訊息處理器上保持運作逾時屬性的預設值是
60
秒。這項逾時期限適用於已設定的後端伺服器
並設定在目標端點設定的 ServiceCallout
政策中
並存取 API Proxy
您可以從預設值增加或減少「訊息處理器」的保持上線逾時設定
60
的秒數。設定方式如下:
- 在 API Proxy 中
- 在目標端點
- 在
ServiceCallout
政策中
- 在訊息處理器中
下列屬性可控制訊息處理器的保持上線逾時:
屬性名稱 | 位置 | 說明 |
---|---|---|
keepalive.timeout.millis |
API Proxy:
|
這是「訊息處理器」允許單一 TCP 的閒置時間上限 連線,可傳送及接收多個 HTTP 要求/回應,而不是開啟新的 連線至每個要求/回應組合。 根據預設,這個屬性會採用
如果此屬性以新的逾時值修改,
目標端點或特定 API Proxy 中的 |
HTTPClient.keepalive.timeout.millis |
訊息處理器 |
這是「訊息處理器」允許單一 TCP 的閒置時間上限 連線,可傳送及接收多個 HTTP 要求/回應,而不是開啟 每個要求/回應組合的新連線。 這個屬性用於這個訊息處理器上執行的所有 API Proxy。 此屬性的預設值為 您可以修改這項屬性,方法如下:
設定訊息處理器保持運作逾時
您也可以在 API Proxy 層級設定 |
事前準備
使用本文件中的步驟前,請務必先瞭解下列主題:
- 如果不熟悉即時逾時設定,請參閱
keepalive.timeout.millis
將房源說明放在 TargetEndpoint 傳輸屬性規格。 - 如果您不熟悉在 Private Cloud 中設定 Edge 的屬性,請參閱 如何設定 Edge。
設定 API Proxy 保持運作逾時
您可以在 API Proxy 的下列位置設定保持運作逾時:
- 目標端點
ServiceCallout
政策
設定 API Proxy 目標端點的保持運作逾時
本節說明如何在應用程式的目標端點
並存取 API Proxy您可以透過屬性設定保持運作逾時
keepalive.timeout.millis
,代表
毫秒。
- 在 Edge UI 中,選取要設定新 Pod 的特定 API Proxy 並保持運作逾時值。
- 選取您要修改的特定目標端點。
-
在
keepalive.timeout.millis
下方TargetEndpoint
設定中的<HTTPTargetConnection>
元素。舉例來說,如要將保持運作的逾時時間變更為
30
秒,請新增 下列程式碼區塊:<Properties> <Property name="keepalive.timeout.millis">30000</Property> </Properties>
由於
keepalive.timeout.millis
屬性是以毫秒為單位,因此30
秒為30000
。以下範例說明如何在目標端點中設定保持運作逾時 設定:
使用後端伺服器的網址的目標端點設定範例
<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 Proxy 所做的變更。
在 API Proxy 的 ServiceSummary 政策中設定保持運作逾時
本節說明如何在
API Proxy 的 ServiceCallout
政策。
所設的 the keepalive.timeout.millis
屬性
並保持運作逾時值 (以毫秒為單位)
如要在 ServiceCallout
政策中設定保持運作逾時,請使用
keepalive.timeout.millis
屬性:
- 在 Edge UI 中,選取要設定新 Pod 的特定 API Proxy
保留
ServiceCallout
政策的存留時間。 - 選取要修改的
ServiceCallout
政策。 - 在
keepalive.timeout.millis
TargetEndpoint
設定中的<HTTPTargetConnection>
元素。舉例來說,如要將保持運作逾時設為
30
秒,請將 下列程式碼區塊:<Properties> <Property name="keepalive.timeout.millis">30000</Property> </Properties>
由於
keepalive.timeout.millis
屬性是以毫秒為單位,因此30
秒為30000
。下列範例說明如何在 API Proxy 的
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 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 Proxy 所做的變更。
設定訊息處理器保持運作逾時
本節說明如何在「訊息處理器」中設定「保持運作逾時」。
屬性可設定保持運作逾時
HTTPClient.keepalive.timeout.millis
,代表保持運作逾時
以毫秒為單位。這項資源已留言
訊息處理器時,您必須使用特殊語法
conf/http.properties+HTTPClient.keepalive.timeout.millis
(如本節所述)
設定目前已加註的權杖,位於
如何設定 Edge。
如要設定訊息處理器的保持上線逾時,請按照下列步驟操作:
- 在訊息處理器電腦上,以編輯器開啟下列檔案。如果尚未建立值區,請先建立值區。
/opt/apigee/customer/application/message-processor.properties
舉例來說,如果要使用
vi
,請輸入以下內容:vi /opt/apigee/customer/application/message-processor.properties
- 在屬性檔案中加入下列格式的 1 行,並將
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
,即可設定保持運作
逾時,您必須驗證是否實際屬性
已將 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
,然後確認你已追蹤所有 您在本課程中所述的步驟 設定訊息處理器保持運作逾時 正確。如果您漏掉任何步驟,請再次正確重複所有步驟。 - 如果仍無法修改保持運作逾時,請 Google Cloud Apigee Edge 支援。