根據預設,Edge 會使用 RPC 部署 API Proxy。雖然這個模式非常適合大多數安裝作業,但許多 MP 的較大拓撲可能會因透過遠端程序呼叫 (RPC) 進行大量並行呼叫而發生逾時。Apigee 計劃在未來淘汰這項實作方式。
因此,Apigee 建議較大型的部署作業使用 HTTP 而非遠端程序呼叫 (RPC)。
除了提供更高的可靠性之外,啟用 HTTP 部署還改善了可能會在部署過程中可能會擲回的例外狀況內容和格式。
本節說明如何針對部署啟用 HTTP。
更新機構
如要啟用 HTTP 部署,請將 PUT
要求傳送至更新機構屬性 API。在要求內文中設定下列屬性:
屬性 | 說明 |
---|---|
allow.deployment.over.http |
決定 Edge 除了透過 RPC 以外,是否可以透過 HTTP 部署 API Proxy。設為 true 即可允許 HTTP 部署,否則設為 false 。預設值為 false 。如要啟用 HTTP 部署作業,您必須將這項屬性設為 |
use.http.for.configuration |
指定設定事件要使用的方法。可能的值為:
如要啟用 HTTP 部署,Apigee 建議將這項屬性設為 |
除了在訊息內文中設定這些屬性以外,您也必須將 Content-Type
標頭設為 application/json
或 application/xml
。
以下範例會使用 JSON 訊息內文呼叫更新機構屬性 API。
curl -u admin_email:admin_password "http://management_server_IP:8080/v1/organizations/org_name" -X POST -H "Content-Type: application/json" -d '{ "properties" : { "property" : [ { "name" : "allow.deployment.over.http", "value" : "true" }, { "name" : "use.http.for.configuration", "value" : "always" } ] } }'
如要在貴機構中的所有 API Proxy 上啟用 HTTP 部署,您必須按照上述方式更新每個機構。
測試更新
如要測試更新是否成功,請在更新後的機構中的 API Proxy 上觸發部署事件,然後查看訊息處理器的記錄檔。部署事件的記錄項目應包含 mode:API
。
詳情請參閱記錄檔。