Вы просматриваете документацию по Apigee Edge.
Перейдите к документации по Apigee X. Информация
В этом документе рассказывается, как включить дедупликацию строк в процессорах сообщений Apigee Edge.
Дедупликация строк – это функция Java, которая помогает экономить память, занятую дублирующимися объектами String в приложениях Java. Она уменьшает объем памяти, занимаемый объектами String в куче Java, за счет того, что одинаковые значения String используют один и тот же массив символов.
Message Processor Apigee Edge – это компонент на основе Java. Использование дедупликации строк в процессоре сообщений может повысить производительность прокси API за счет уменьшения использования памяти, особенно если прокси API активно используют строки.
Функцию дедупликации строк можно использовать только со сборщиком мусора G1 (G1GC) в приложениях Java. Если вы хотите включить эту функцию в Message Processor, то у вас уже должна быть включена функция G1GC или вы должны включить G1GC и дедупликацию строк одновременно в Message Processor.
Подготовка
- Если вы не знакомы с G1GC, прочитайте статью Начало работы со сборщиком мусора G1.
- Если вы не знакомы с дедупликацией строк, прочитайте статью Дедупликация строк в сборщике мусора G1.
- Если вы не знаете, как включить G1GC на процессорах сообщений Edge, прочитайте статью Включение G1GC на процессорах сообщений.
- Если вы не знаете, как настраивать свойства для Edge в частном облаке, прочитайте статью Как настроить Edge.
Как включить дедупликацию строк в процессорах сообщений
В этом разделе рассказывается, как включить функцию дедупликации строк в процессорах сообщений Edge. Дедупликацию строк можно включить с помощью свойства useStringDeduplication в компоненте Message Processor. По умолчанию для этого свойства в процессорах сообщений задано значение false. Чтобы настроить любое свойство в процессоре сообщений, используйте токен в соответствии с синтаксисом, описанным в разделе Как настроить Edge.
Чтобы включить дедупликацию строк в процессорах сообщений, выполните следующие действия:
- Как найти токен для свойства useStringDeduplication
- Как включить useStringDeduplication в Message Processor
Как найти токен для свойства useStringDeduplication
Ниже описано, как найти токен для useStringDeduplication:
-
Найдите свойство
useStringDeduplicationв исходном каталоге Message Processor/opt/apigee/edge-message-processor/sourceс помощью следующей команды:grep -ri "useStringDeduplication" /opt/apigee/edge-message-processor/source
-
В результате выполнения этой команды будет показан токен для свойства обработчика сообщений
useStringDeduplication:/opt/apigee/edge-message-processor/source/conf/system.properties:useStringDeduplication={T}conf_system_useStringDeduplication{/T}Строка между тегами
{T}{/T}– это название токена, который можно задать в файле.propertiesобработчика сообщений. Таким образом, токен для свойстваuseStringDeduplicationбудет выглядеть следующим образом:conf_system_useStringDeduplication
Как включить дедупликацию строк в процессорах сообщений
Чтобы включить дедупликацию строк в процессорах сообщений Apigee, выполните следующие действия:
-
Откройте файл
/opt/apigee/customer/application/message-processor.propertiesна компьютере Message Processor в редакторе. Если файла ещё нет, создайте его. Пример:vi /opt/apigee/customer/application/message-processor.properties
-
Добавьте в этот файл следующую строку:
conf_system_useStringDeduplication=true
- Сохраните изменения.
-
Убедитесь, что файл свойств принадлежит пользователю
apigee. Пример:chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
-
Перезапустите Message Processor, используя следующую команду:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- Если у вас несколько процессоров сообщений, повторите эти шаги на каждом из них.
Как проверить дедупликацию строк в процессорах сообщений
В этом разделе рассказывается, как проверить, успешно ли включена дедупликация строк в процессорах сообщений.
Несмотря на то что вы используете токен conf_system_useStringDeduplication, чтобы включить дедупликацию строк в Message Processor, вам нужно убедиться, что для свойства useStringDeduplication задано новое значение, как описано ниже.
-
Найдите свойство
useStringDeduplicationв каталоге/opt/apigee/edge-message-processor/confи убедитесь, что для него задано новое значение. Пример:grep -ri "useStringDeduplication" /opt/apigee/edge-message-processor/conf
-
Если дедупликация строк успешно включена в Message Processor, то в файле
system.propertiesбудет указано новое значение.Пример результата выполнения предыдущей команды после включения дедупликации строк в Message Processor:
/opt/apigee/edge-message-processor/conf/system.properties:useStringDeduplication=true
В примере выходных данных обратите внимание, что свойству
useStringDeduplicationзадано новое значениеtrueвsystem.properties. Это означает, что дедупликация строк успешно включена в Message Processor. -
Если вы по-прежнему видите старое значение свойства
useStringDeduplication, убедитесь, что вы правильно выполнили все шаги, описанные в разделе Включение дедупликации строк в процессорах сообщений. Если вы пропустили какой-либо шаг, повторите все действия заново. - Если вам по-прежнему не удается включить дедупликацию строк, обратитесь в службу поддержки Apigee.