В зависимости от вашего трафика и требований к обработке вам может потребоваться изменить размер кучи или размер метаданных класса для ваших узлов, на которых работают компоненты частного облака на основе Java.
В этом разделе представлены стандартные и рекомендуемые размеры кучи Java, а также процесс изменения значений по умолчанию. Наконец, в этом разделе описывается, как изменить другие настройки JVM с помощью файлов свойств.
Стандартные и рекомендуемые размеры памяти кучи
В следующей таблице перечислены стандартные и рекомендуемые размеры памяти кучи Java для компонентов частного облака на основе Java:
Компонент | Имя файла свойств | По умолчанию Размер кучи | Рекомендуется Размер кучи |
---|---|---|---|
Время выполнения | |||
Кассандра | н/д | Автоматически настроено 1 | Автоматически настроено 1 |
Процессор сообщений | message-processor.properties | 512 МБ | 3 ГБ – 6 ГБ 2 |
Маршрутизатор | router.properties | 512 МБ | 512 МБ |
Аналитика | |||
Постгрес-сервер | postgres-server.properties | 512 МБ | 512 МБ |
Qpid-сервер | qpid-server.properties | 512 МБ | 2ГБ - 4ГБ |
Управление | |||
Сервер управления | management-server.properties | 512 МБ | 512 МБ |
пользовательский интерфейс | ui.properties | 512 МБ | 512 МБ |
OpenLDAP | н/д | Родное приложение 3 | Родное приложение 3 |
смотритель зоопарка | zookeeper.properties | 2048 МБ | 2048 МБ |
Примечания | |||
1 Cassandra динамически вычисляет максимальный размер кучи при запуске. В настоящее время это половина общего объема системной памяти, максимальный объем которой составляет 8192 МБ. Информацию о настройке размера кучи см. в разделе Изменение размера кучи . | |||
2 Для процессоров сообщений Apigee рекомендует установить размер кучи от 3 до 6 ГБ. Увеличивайте размер кучи свыше 6 ГБ только после проведения тестов производительности. Если во время тестирования производительности использование кучи приближается к максимальному пределу, увеличьте максимальный предел. Информацию о настройке размера кучи см. в разделе Изменение размера кучи . | |||
3 Не все компоненты частного облака реализованы на Java. Поскольку приложения, работающие на хост-платформе, не основаны на Java, они не имеют настраиваемых размеров кучи Java; вместо этого они полагаются на хост-систему для управления памятью. |
Чтобы определить, какой общий объем памяти Apigee рекомендует выделить для ваших Java-компонентов на узле, добавьте значения, перечисленные выше, для каждого компонента на этом узле. Например, если на вашем узле размещены серверы Postgres и Qpid, Apigee рекомендует, чтобы общее выделение памяти составляло от 2,5 до 4,5 ГБ.
Список необходимого оборудования (например, оперативной памяти) см. в разделе Требования к установке .
Изменение размеров кучи памяти
Чтобы изменить настройки динамической памяти, отредактируйте файл свойств компонента. Например, для процессора сообщений отредактируйте файл /opt/apigee/customer/application/message-processor.properties
.
Если файл message-processor.properties
не существует или соответствующий файл .properties
для любого компонента Edge не существует, создайте его, а затем измените владельца файла на пользователя «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» для обозначения мегабайт, как показано в следующем примере:
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
поскольку эти значения контролируются свойствами, перечисленными выше.
Дополнительные советы по настройке памяти для компонентов частного облака см. в этой статье на форумах Edge.