Настройка размера динамической памяти в процессорах сообщений

Вы просматриваете документацию Apigee Edge .
Перейдите в документацию Apigee
X.info

Обработчик сообщений Apigee Edge — это компонент на основе Java, использующий размер кучи по умолчанию 512 МБ. Однако размер кучи по умолчанию может быть недостаточным для всех сценариев использования Apigee Edge. Вам может потребоваться настроить размер кучи для ваших обработчиков сообщений в зависимости от вашего трафика и требований к обработке, или для решения любых проблем, связанных с памятью.

Размер памяти кучи в Java-приложении контролируется с помощью параметров командной строки Java -Xms (минимальный размер кучи) и -Xmx (максимальный размер кучи). В процессорах сообщений Apigee Edge эти параметры контролируются с помощью свойств 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 ГБ и 2 ГБ соответственно, добавьте следующие строки в этот файл:

    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_mem и bin_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 .

Что дальше?