Resolução de problemas de memória para servidores do Business Process Manager

Se você estiver usando o IBM® Business Process Manager com um sistema operacional de 32-bit ou Java Virtual Machine (JVM), você pode observar problemas com o desempenho do servidor e disponibilidade, incluindo OutOfMemory exceções. Essas ocorrem quando o sistema operacional ou JVM não tiver memória acessível o suficiente para suportar todos os processos em execução.

Se o desempenho do servidor está gravemente degradado ou se você vir uma exceção OutOfMemory , considere mudar para um sistema operacional de 64-bit bits ou JVM. Caso contrário, utilize as informações na tabela a seguir para identificar possíveis soluções para problemas de memória específica.

Tabela 1. problemas de memória Observable e ações sugeridas
Comportamento Observado Ações possíveis
o servidor severamente o desempenho degradado (swapping ocorrer)
  • Certifique-se de que haja memória física suficiente para o suporte IBM Business Process Manager e todos os outros processos em execução. Use a ferramenta de análise de memória do sistema para a sua plataforma (por exemplo, vmstat para plataformas Linux ou UNIX, ou o Gerenciador de Tarefas para plataformas Windows).

    Observe que alguns sistemas 32-bit operacional só pode utilizar uma quantidade específica de memória física.

  • Pare os processos em execução que não são críticos para o Business Process Manager (por exemplo, janelas do navegador extras ou outros aplicativos instalados).

  • Estabeleça uma conexão DB2 remota e use-a no lugar da instância DB2 local. Pare todos os processos do DB2 local na máquina local.

  • Se você estiver autoria de processos, utilize um ambiente de teste de unidade remota e Process Center em vez de os executando em sua máquina local.

o desempenho do servidor gravemente degradado (não swapping) combinada com a atividade de coleta de lixo excessiva
  • Aumente o tamanho de heap Java máximo. O tamanho de heap precisa ser grande o suficiente para conter todos os objetos Java necessário, mas pequeno o suficiente para evitar gargalos de grandes quantidades de memória nativa.

  • Ajuste o heap da JVM.

Para obter informações adicionais sobre como ajustar o tamanho de heap e as configurações de coleta de lixo, consulte Ajustando a máquina virtual IBM para Java e Configurações da Java virtual machine.

Problemas de memória; por exemplo, a instância ocupa muita memória disponível

Reduza o tamanho do cache de contexto de ramificação. Reduzir o tamanho do cache de 64 a 16 faz uma grande diferença na quantidade de memória que a instância utiliza, embora você esteja equilibrando um pouco o desempenho para a melhoria no uso da memória.

Para alterar o tamanho do cache, localize o arquivo 00static.xml no PROFILE_HOME\config\cells\cell_name\nodes\node_name\servers\server_name\process-server\config\system. Nele, é possível editar o valor para o tamanho máximo do cache de contexto de ramificação.

Uma exceção OutOfMemory
  • Se a exceção for imediatamente precedida por atividade de coleta de lixo freqüente que não liberar espaço no heap Java, utilize as informações na linha anterior para aumentar o tamanho de heap Java máximo, ajuste o heap JVM, ou ambos.

  • Se a exceção não é imediatamente precedida por atividade de coleta de lixo, ele pode indicar que a memória nativa para um recurso tiver sido exaurido. Diminua o tamanho máximo de heap Java para permitir mais espaço para a memória nativa no espaço de endereço da JVM.

  • Se a exceção ocorre quando você tentar fazer download Process Designer a partir do console do Process Center, execute as etapas a seguir.
    1. Saia do console do Process Center.
    2. Utilize o console administrativo do WebSphere para definir uma propriedade customizada para o contêiner da web :
      1. Clique em Servidores > Tipos de Servidor > WebSphere Application Servers > serverName > Web container > Propriedades Customizadas.
      2. Inclua a propriedade com.ibm.ws.webcontainer.channelwritetype e configure seu valor como synch.
      3. Salve suas mudanças e saia do console administrativo.
    3. Reinicie o console do Process Center e continue o download do Process Designer.
Uma exceção OutOfMemoryError com uma exceção de interrupção de encadeamento correspondente Se você encontrar esta exceção OutOfMemoryError específica, talvez possa resolver o problema concluindo as etapas a seguir:
  1. Aumente o número permitido de processos, incluindo as linhas a seguir no final do arquivo /etc/security/limits.conf (ou alterando os valores, se as linhas já existem no arquivo):
    # - nproc - número máximo de processos
    * soft nproc 65535
    * hard nproc 65535
    Se você estiver executando uma instalação como um usuário não administrativo, também adicione ou modifique as seguintes linhas de acordo com seu nome de usuário:
    user_name soft nproc 65535
    user_name hard nproc 65535

    Salve e feche o arquivo e, em seguida, efetue logoff e login novamente. É possível verificar o número atual de processos permitido, executando o comando -u ulimit.

  2. Verifique a existência de um arquivo chamado /etc/security/limits.d/90-nproc.conf, que substitui o valor nproc configurado no arquivo limits.conf . Se o 90-nproc.conf arquivo existe, edite-o e configure o nproc valores que estão especificados na etapa anterior. Por exemplo:
    /etc/security/limits.d/90-nproc.conf
    * soft nproc 65535
  3. Salve e feche os arquivos e, em seguida, efetue logoff e login novamente. É possível verificar o número atual de processos permitido, executando o comando -u ulimit.