Como ativar a eliminação de duplicação de strings nos processadores de mensagens

Esta é a documentação do Apigee Edge.
Acesse Documentação da Apigee X.
informações

Neste documento, explicamos como ativar a eliminação de duplicação de strings nos processadores de mensagens do Apigee Edge.

A eliminação de duplicação de strings é um recurso do Java que ajuda a economizar a memória ocupada por strings duplicadas. em aplicativos Java. Reduz o consumo de memória de objetos String na pilha Java. memória 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. Como usar a eliminação de duplicação de strings em uma mensagem pode melhorar o desempenho dos seus proxies de API reduzindo o uso de memória, especialmente se os proxies da API usarem muitas strings.

O recurso de eliminação de duplicação de strings pode ser usado apenas com o Coletor de lixo G1 (G1GC) em Java aplicativos conteinerizados. Se você quiser ativar esse recurso no processador de mensagens, será preciso já estejam com o G1GC ativado ou ative o G1GC e a eliminação de duplicação de strings ao mesmo tempo na mensagem Processador

Antes de começar

Como ativar a eliminação de duplicação de strings nos processadores de mensagens

Esta seção explica como ativar o recurso Eliminação de duplicação de strings na mensagem do Edge Processadores. A eliminação de duplicação de strings pode ser ativada pela propriedade useStringDeduplication no componente "Processador de mensagens". Por padrão, é definida como falsa nos processadores de mensagens. Para configurar qualquer propriedade no Message Processador, use o token de acordo com a sintaxe descrita em Como configurar o Edge.

Para ativar a eliminação de duplicação de strings nos processadores de mensagens, siga estas etapas:

  1. Localizar o token para a propriedade useStringDedouble
  2. Ativar useStringDeDuplicate no processador de mensagens
.

Localizar token para a propriedade useStringDeDeletion

As etapas a seguir descrevem como localizar o token para useStringDeDuplicate:

  1. Pesquise a propriedade useStringDeduplication na origem do processador de mensagens. diretório /opt/apigee/edge-message-processor/source usando o seguinte comando:
    grep -ri "useStringDeduplication" /opt/apigee/edge-message-processor/source
    
  2. A saída desse comando mostra o token da propriedade do processador de mensagens useStringDeduplication 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 que pode ser definido no arquivo .properties do processador de mensagens. Assim, o token para a propriedade useStringDeduplication é o seguinte:

    conf_system_useStringDeduplication
    

Ativar a eliminação de duplicação de strings nos processadores de mensagens

As etapas a seguir descrevem como ativar a eliminação de duplicação de strings nos processadores de mensagens da Apigee:

  1. Abrir o arquivo /opt/apigee/customer/application/message-processor.properties no a máquina do processador de mensagens em um editor. Se o arquivo ainda não existir, crie-o. Exemplo:
    vi /opt/apigee/customer/application/message-processor.properties
    
  2. Adicione a seguinte linha a esse arquivo:
    conf_system_useStringDeduplication=true
    
  3. Salve as alterações.
  4. Verifique se esse arquivo de propriedades pertence ao usuário apigee. Exemplo:
    chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
    
  5. Reinicie o processador de mensagens usando o seguinte comando:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
    
  6. Se você tiver mais de um processador de mensagens, repita essas etapas em todos eles.

Como verificar a eliminação de duplicação de strings nos processadores de mensagens

Esta seção explica como verificar se a eliminação de duplicação de strings foi ativada com sucesso nos processadores de mensagens.

Mesmo que você use o token conf_system_useStringDeduplication para ativar strings Eliminar a duplicação no Processador de mensagens, é necessário verificar se a propriedade real useStringDeduplication foi definido com o novo valor da seguinte forma:

  1. Pesquise a propriedade useStringDeduplication na /opt/apigee/edge-message-processor/conf e verifique se ele tem com o novo valor. Exemplo:
    grep -ri "useStringDeduplication" /opt/apigee/edge-message-processor/conf
    
  2. Se a eliminação de duplicação de strings for ativada no processador de mensagens, a mostra o novo valor no arquivo system.properties.

    O exemplo de resultado do comando anterior depois que você ativou a eliminação de duplicação de strings no O processador de mensagens é o seguinte:

    /opt/apigee/edge-message-processor/conf/system.properties:useStringDeduplication=true
    

    No exemplo de saída, observe que a propriedade useStringDeduplication foi definida com o novo valor true em system.properties. Isso indica que a eliminação de duplicação de strings foi ativada com sucesso no Processador de mensagens.

  3. Se você ainda vir o valor antigo da propriedade useStringDeduplication, Verifique se você seguiu todas as etapas descritas na Como ativar a eliminação de duplicação de strings nos processadores de mensagens corretamente. Se você tiver pulado alguma etapa, repita-a corretamente.
  4. Se você ainda não conseguir ativar a eliminação de duplicação de strings, entre em contato com suporte da Apigee.

E agora?

Ativar o G1GC nos processadores de mensagens