Você está lendo a documentação do Apigee Edge.
Acesse a
documentação da Apigee X. info
Este documento explica como ativar a deduplicação de strings nos processadores de mensagens do Apigee Edge.
A deduplicação de strings é um recurso Java que ajuda a economizar memória ocupada por objetos de string duplicados em aplicativos Java. Ela reduz o consumo de memória de objetos de string na memória heap Java fazendo com que os valores de string duplicados ou idênticos compartilhem a mesma matriz de caracteres.
O processador de mensagens do Apigee Edge é um componente baseado em Java. O uso da deduplicação de strings em um processador de mensagens pode melhorar o desempenho dos proxies de API, reduzindo o uso da memória, especialmente se os proxies de API fizerem uso intenso de strings.
O recurso de deduplicação de strings só pode ser usado com o coletor de lixo G1 (G1GC) em aplicativos Java. Se você quiser ativar esse recurso no processador de mensagens, já precisará ter o G1GC ativado ou ativar o G1GC e a deduplicação de strings juntos no processador de mensagens.
Antes de começar
- Se você não conhece o G1GC, leia Introdução ao coletor de lixo G1
- Se você não conhece a deduplicação de strings, leia Deduplicação de strings do coletor de lixo G1
- Se você não sabe como ativar o G1GC nos processadores de mensagens do Edge, leia Ativar o G1GC nos processadores de mensagens.
- Se você não sabe como configurar propriedades para o Edge na nuvem privada, leia Como configurar o Edge.
Como ativar a deduplicação de strings nos processadores de mensagens
Esta seção explica como ativar o recurso de deduplicação de strings nos processadores de mensagens do Edge
Processors. A deduplicação de strings pode ser ativada pela propriedade
useStringDeduplication no componente do processador de mensagens. Por padrão, essa
propriedade é definida como "false" nos processadores de mensagens. Para configurar qualquer propriedade no processador de mensagens, use o token de acordo com a sintaxe descrita em Como configurar o Edge.
Para ativar a deduplicação de strings nos processadores de mensagens, siga estas etapas:
- Localizar o token da propriedade useStringDeduplication
- Ativar useStringDeduplication no processador de mensagens
Localizar o token da propriedade useStringDeduplication
As etapas a seguir descrevem como localizar o token para useStringDeduplication:
-
Pesquise a propriedade
useStringDeduplicationno diretório de origem do processador de mensagens/opt/apigee/edge-message-processor/sourceusando o seguinte comando:grep -ri "useStringDeduplication" /opt/apigee/edge-message-processor/source
-
A saída desse comando mostra o token da propriedade
useStringDeduplicationdo processador de mensagens da seguinte maneira:/opt/apigee/edge-message-processor/source/conf/system.properties:useStringDeduplication={T}conf_system_useStringDeduplication{/T}Em que a string entre as tags
{T}{/T}é o nome do token que pode ser definido no arquivo.propertiesdo processador de mensagens. Assim, o token da propriedadeuseStringDeduplicationé o seguinte:conf_system_useStringDeduplication
Ativar a deduplicação de strings nos processadores de mensagens
As etapas a seguir descrevem como ativar a deduplicação de strings nos processadores de mensagens do Apigee:
-
Abra o arquivo
/opt/apigee/customer/application/message-processor.propertiesna máquina do processador de mensagens em um editor. Se o arquivo ainda não existir, crie-o. Por exemplo:vi /opt/apigee/customer/application/message-processor.properties
-
Adicione a seguinte linha a esse arquivo:
conf_system_useStringDeduplication=true
- Salve as alterações.
-
Verifique se esse arquivo de propriedades pertence ao usuário
apigee. Por exemplo:chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
-
Reinicie o processador de mensagens usando o seguinte comando:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- Se você tiver mais de um processador de mensagens, repita essas etapas em todos eles.
Como verificar a deduplicação de strings nos processadores de mensagens
Esta seção explica como verificar se a deduplicação de strings foi ativada com sucesso nos processadores de mensagens.
Embora você use o token conf_system_useStringDeduplication para ativar a deduplicação de strings no processador de mensagens, é necessário verificar se a propriedade real useStringDeduplication foi definida com o novo valor da seguinte maneira:
-
Pesquise a propriedade
useStringDeduplicationno/opt/apigee/edge-message-processor/confdiretório e verifique se ela foi definida com o novo valor. Por exemplo:grep -ri "useStringDeduplication" /opt/apigee/edge-message-processor/conf
-
Se a deduplicação de strings for ativada com sucesso no processador de mensagens, o comando anterior
mostrará o novo valor no arquivo
system.properties.O resultado de amostra do comando anterior depois de ativar a deduplicação de strings no processador de mensagens é o seguinte:
/opt/apigee/edge-message-processor/conf/system.properties:useStringDeduplication=true
No exemplo de saída, observe que a propriedade
useStringDeduplicationfoi definida com o novo valortrueemsystem.properties. Isso indica que a deduplicação de strings foi ativada com sucesso no processador de mensagens. -
Se você ainda vir o valor antigo da propriedade
useStringDeduplication, então verifique se seguiu todas as etapas descritas em Como ativar a deduplicação de strings nos processadores de mensagens corretamente. Se você perdeu alguma etapa, repita todas as etapas corretamente. - Se ainda não for possível ativar a deduplicação de strings, entre em contato com o suporte do Apigee.