啟用 HTTP 部署作業

根據預設,Edge 會使用 RPC 部署 API Proxy。雖然這個模式對大部分的安裝作業來說非常好,但如有大量並行呼叫透過 RPC 發出,大量 MP 大型拓撲仍可能發生逾時情況。Apigee 預計日後淘汰這項實作項目。

因此,Apigee 建議大型部署作業使用 HTTP,而非 RPC。

除了可能提供更高的可靠度,啟用 HTTP 部署功能還可改善部署程序中可能擲回的例外狀況內容和格式。

本節說明如何為部署作業啟用 HTTP。

更新機構

如要啟用 HTTP 部署作業,請將 PUT 要求傳送至 Update organization properties API。請在要求主體中設定下列屬性:

屬性 說明
allow.deployment.over.http 判斷 Edge 是否可透過 HTTP (除了 RPC 之外) 部署 API Proxy。設為 true 即可允許 HTTP 部署,否則設為 false。預設為 false

如要啟用 HTTP 部署作業,您必須將這項屬性設為 true

use.http.for.configuration

指定要用於設定事件的方法。可能的值為:

  • never:所有設定事件都會使用 RPC。此為預設值。
  • retry:所有設定事件都會優先使用 RPC;如果事件透過 RPC 失敗,Edge 會嘗試使用 HTTP。如果您應使用 HTTP,這可能會導致延遲。
  • always:所有設定事件都使用 HTTP。

如要啟用 HTTP 部署作業,Apigee 建議將這個屬性設為 always

除了在郵件主旨中設定這些屬性外,您還必須將 Content-Type 標頭設為 application/jsonapplication/xml

以下範例會使用 JSON 訊息主體呼叫 Update organization properties 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 代理程式上啟用 HTTP 部署功能,您必須按照上述方式更新各機構。

測試更新

如要測試更新是否成功,請在更新後的機構中,針對 API 委派程式觸發部署事件,然後查看訊息處理工具的記錄檔。部署事件的記錄項目應包含 mode:API

詳情請參閱「記錄檔案」。