視流量和處理需求而定,您可能需要變更堆積記憶體 執行 Java 私有雲的節點大小或類別中繼資料大小 元件。
本節提供預設和建議的 Java 堆積記憶體大小,以及 視為變更預設值的程序最後,本節將說明如何變更 使用屬性檔案 JVM 設定。
預設和建議的堆積記憶體大小
下表列出以 Java 為基礎的預設和建議的 Java 堆積記憶體大小 私有雲元件:
元件 | 屬性檔案名稱 | 預設 堆積大小 |
建議 堆積大小 |
---|---|---|---|
執行階段 | |||
Cassandra | 不適用 | 自動設定1 | 自動設定1 |
訊息處理器 | message-processor.properties |
512 MB | 3GB - 6GB2 |
路由器 | router.properties |
512 MB | 512 MB |
數據分析 | |||
Postgres 伺服器 | postgres-server.properties |
512 MB | 512 MB |
Qpid 伺服器 | qpid-server.properties |
512 MB | 2GB - 4GB |
管理 | |||
管理伺服器 | management-server.properties |
512 MB | 512 MB |
UI | ui.properties |
512 MB | 512 MB |
OpenLDAP | 不適用 | 原生應用程式3 | 原生應用程式3 |
Zookeeper | zookeeper.properties |
2048 MB | 2048 MB |
附註 | |||
1 Cassandra 決定啟動後目前這佔系統記憶體總量的一半, 8192 MB。如要進一步瞭解如何設定堆積大小,請參閱變更堆積大小 記憶體大小: |
|||
2 針對訊息處理器,Apigee 建議您設定堆積
介於 3 GB 到 6 GB 之間請在執行後將堆積大小增加至超過 6 GB
效能測試
如果效能測試期間的堆積用量接近上限,請提高 達到上限如要瞭解如何設定堆積大小,請參閱 變更堆積記憶體大小。 |
|||
3 並非所有私有雲元件都是以 Java 實作。由於 並非以 Java 為基礎,在主機平台上原生執行的應用程式則沒有 可設定的 Java 堆積大小;而會仰賴主機系統 以自動化做法管理成本 |
如要判斷 Apigee 建議分配給 Java 記憶體的記憶體總量 請針對該節點的每個元件新增上述的值。舉例來說 節點會同時代管 Postgres 和 Qpid 伺服器,Apigee 會建議您合併記憶體 介於 2.5 GB 到 4.5 GB 之間
如需所需的硬體 (例如 RAM) 清單,請參閱 安裝需求。
變更堆積記憶體大小
如要變更堆積記憶體設定,請編輯元件的屬性檔案。舉例來說,
訊息處理器
/opt/apigee/customer/application/message-processor.properties
檔案。
如果 message-processor.properties
檔案
不存在,或沒有任何 Edge 元件的對應 .properties
檔案
不存在,建立該檔案,然後將檔案擁有權變更為「apigee」使用者,執行下列操作
範例如下所示:
chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
如果元件安裝在多部電腦上 (例如訊息處理器), 必須編輯所有代管元件電腦上的屬性檔案。
下表列出您可以編輯來變更堆積大小的屬性:
屬性 | 說明 |
---|---|
bin_setenv_min_mem |
堆積大小下限。預設值是以 預設和建議的堆積記憶體大小。 這項設定對應至 Java |
bin_setenv_max_mem |
堆積大小上限。預設值是以 預設和建議的堆積記憶體大小。 這項設定對應至 Java |
bin_setenv_meta_space_size |
預設類別中繼資料大小。預設值為
這項設定對應至 Java |
在節點上設定堆積大小屬性時,請使用「m」表示 MB 等 範例如下:
bin_setenv_min_mem=4500m bin_setenv_max_mem=4500m bin_setenv_meta_space_size=1024m
設定屬性檔案中的值後,重新啟動元件:
/opt/apigee/apigee-service/bin/apigee-service component restart
例如:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
變更其他 JVM 屬性
針對不受上述屬性控制的 Java 設定,您也可以傳入
JVM 標記或值 (適用於任何 Edge 元件)。系統會用以下程式碼讀取 *.properties
檔案:
由 Bash 分隔,且應以 '
(單引號) 括住,才能保留常值字元或
"
(雙引號)。
bin_setenv_ext_jvm_opts
:設定任何 Java 其他屬性並未指定其屬性。例如:bin_setenv_ext_jvm_opts='-XX:MaxGCPauseMillis=500'
不過,不要使用
bin_setenv_ext_jvm_opts
將-Xms
、-Xmx
或-XX:MetaspaceSize
設為這些值 由上述屬性控制。
如需為 Private Cloud 元件設定記憶體的其他提示,請參閱 本 這篇文章。