修改 Java 記憶體設定

私有雲 4.18.05 版本

視流量和處理需求而定,您可能需要提高一或多個 Apigee 元件的堆積大小或類別中繼資料大小。

如要變更這些設定,請編輯元件的屬性檔案。如果元件已安裝在多部機器 (例如邊緣訊息處理器) 上,請在代管該元件的所有機器上編輯屬性檔案。

如要設定這些值,請設定下列屬性:

屬性 說明
bin_setenv_min_mem 設定堆積大小下限。預設值為 256 MB。這項設定對應至 Java -Xms 選項。
bin_setenv_max_mem 設定堆積大小上限。預設值為 512 MB。這項設定對應至 Java -Xmx 選項。
bin_setenv_meta_space_size 設定預設類別中繼資料大小。預設值為 bin_setenv_max_permsize 的值,預設值為 128 MB。在訊息處理工具中,Apigee 建議將這個值設為 256 MB 或 512 MB (視流量而定)。這項設定與 Java -XX:MetaspaceSize 選項對應。

為機器上的每個元件設定這些屬性,並使用「m」字尾來表示 MB。舉例來說,如果是「訊息處理工具」,請在 /opt/apigee/customer/application/message-processor.properties 檔案中進行設定:

bin_setenv_min_mem=512m
bin_setenv_max_mem=1024m
bin_setenv_meta_space_size=1024m

如果 message-processor.properties 檔案不存在,或是任何 Edge 元件的對應 .properties 檔案不存在,請建立一個檔案,然後將檔案擁有權變更為「Apigee」使用者:

chown apigee:apigee /opt/apigee/customer/application/message-processor.properties

設定 .properties 檔案中的值後,重新啟動元件:

/opt/apigee/apigee-service/bin/apigee-service component restart

例如:

/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart

針對不屬於上述屬性的 Java 設定,您也可以在任何 Edge 元件的對應 .properties 檔案中設定以下內容:

  • bin_setenv_ext_jvm_opts:設定未由其他屬性指定的 Java 屬性。例如:
    bin_setenv_ext_jvm_opts=-XX:MaxGCPauseMillis=500

    不過,請勿使用 bin_setenv_ext_jvm_opts 設定 -Xms-Xmx-XX:MetaspaceSize,因為這些值是由以上屬性控管。

如需設定記憶體的其他提示,請參閱邊緣論壇的這篇文章