設定訊息處理器的堆積記憶體大小

查看 Apigee Edge 說明文件。
前往 Apigee X說明文件
資訊

Apigee Edge 的訊息處理器是以 Java 為基礎的元件,其預設堆積記憶體大小為 512 MB。不過,預設的堆積記憶體大小可能不足以用在 Apigee Edge。您可能需要根據 可以滿足流量和處理需求,或是解決任何記憶體相關問題。

Java 應用程式的堆積記憶體大小,是透過 Java 指令列參數控制 -Xms (堆積最小) 和 -Xmx (堆積大小上限)。使用 Apigee 邊緣訊息處理器,這些元件可透過屬性 bin_setenv_min_mem 控制 和 bin_setenv_max_mem。如要進一步瞭解這些屬性,請前往 修改 Java 記憶體設定

本文說明如何在 Apigee Edge 的訊息處理器中設定堆積記憶體大小。

事前準備

變更訊息處理器的堆積記憶體大小

本節說明如何變更訊息處理器上的堆積記憶體大小。最小值和 您可以透過屬性 bin_setenv_min_mem 設定堆積記憶體上限 和 bin_setenv_max_mem 位於訊息處理器元件上

如要變更訊息處理器的堆積記憶體大小,請執行下列步驟:

  1. 開啟 /opt/apigee/customer/application/message-processor.properties 上的檔案 也就是編輯器中的訊息處理器機器如果檔案不存在,則建立該檔案。 例如:
    vi /opt/apigee/customer/application/message-processor.properties
    
  2. 在這個檔案中新增以下幾行內容:
    bin_setenv_min_mem=minimum_heap_in_megabytes
    bin_setenv_max_mem=maximum_heap_in_megabytes
    

    例如,如果您要將訊息處理器上堆積的最小和最大堆積變更為 1 GB 和 2 GB,然後在這個檔案中新增以下幾行內容:

    bin_setenv_min_mem=1024m
    bin_setenv_max_mem=2048m
    
  3. 儲存變更。
  4. 請確認這個屬性檔案為 apigee 使用者所擁有。例如:
    chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
    
  5. 使用下列指令重新啟動訊息處理器:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
    
  6. 如果您有多部訊息處理器,請對所有訊息處理器重複以上步驟。

驗證訊息處理器上的堆積記憶體大小

本節說明如何驗證堆積記憶體變更是否已成功修改 訊息處理器

即使您使用了 bin_setenv_min_membin_setenv_max_mem 屬性來變更訊息處理器的堆積記憶體大小,仍需要確認是否已使用新值設定實際的 Java 指令列參數 -Xms-Xmx,如下所示:

  1. 搜尋,確認指令列參數 -Xms-Xmx 是否 並使用以下指令為郵件處理器的新值進行設定:
    ps -ef | grep message-processor | egrep -o 'Xms[0-9a-z]+|Xmx[0-9a-z]+' | tr '\r' ' '
    
  2. 如果訊息處理器的堆積記憶體最小值和最大值有所變更, 先前的指令會顯示 -Xms-Xmx 的新值。

    在您變更過最小值和最大值後,上一個指令的範例結果 訊息處理器上的堆積,如下:

    Xms1024m
    Xmx2048m
    

    請注意,在輸出範例中,對於堆積的最小和最大堆積設有新的值。

  3. 如果 -Xms-Xmx 仍會顯示舊值,請確認 您已遵循 正確變更訊息處理器的堆積記憶體大小。 如果您漏掉任何步驟,請再次正確重複所有步驟。
  4. 如果您還是無法變更堆積記憶體,請與 Apigee Edge 支援團隊聯絡。

接下來呢?