Ajustando Servidores de Aplicativos
O produto contém componentes interrelacionados que devem ser sintonizados harmoniosamente para suportar as necessidades customizadas de seu aplicativo de e-business de ponta a ponta.
Sobre Esta Tarefa
Esse grupo de componentes interrelacionados é conhecido como rede de enfileiramento. A rede de enfileiramento ajuda o sistema a alcançar o rendimento máximo, enquanto mantém a estabilidade geral do sistema.
As etapas a seguir descrevem as várias tarefas de ajuste que podem melhorar o desempenho do servidor de aplicativos. É possível escolher implementar qualquer uma dessas configurações do servidor de aplicativos. As etapas podem ser executadas em qualquer ordem.
Procedimento
- Execute applyPerfTuningTemplate.py, como o ponto de início para melhorar o desempenho de um servidor de aplicativos.
É possível usar o script de ajuste baseado em python, applyPerfTuningTemplate.py, juntamente com um de seus arquivos de modelo, para aplicar as configurações de ajuste de desempenho recomendadas. O script e seus arquivos de modelo estão localizados no diretório WAS_HOME/bin.
- Ajuste o object request broker. Um ORB (Object Request Broker) gerencia a interação entre clientes
e servidores, utilizando o IIOP (Internet InterORB Protocol).
Ele suporta solicitações e respostas de clientes recebidas de servidores em um ambiente distribuído em rede. É possível usar os seguintes parâmetros para sintonizar o ORB:
- Configure Passar por Referência (com.ibm.CORBA.iiop.noLocalCopies) conforme descrito nas informações sobre configurações de serviço do Object Request Broker.
Configure Connection cache minimum (com.ibm.CORBA.MaxOpenConnections) conforme descrito nas informações das configurações de serviço do Object Request Broker.
Configure o Tamanho Máximo conforme descrito no tópico sobre configurações do conjunto de encadeamentos.
Configure com.ibm.CORBA.ServerSocketQueueDepth conforme descrito nas informações sobre propriedades customizadas do Object Request Broker.
- Configure com.ibm.CORBA.FragmentSize conforme descrito nas informações sobre propriedades customizadas do Object Request Broker.
Consulte as informações sobre as diretrizes de ajuste do Object Request Broker para obter dicas sobre como usar esses parâmetros para sintonizar o ORB.
- Sintonize as definições do analisador de XML.
- Descrição: Facilita a inicialização do servidor incluindo definições do analisador XML nos arquivos jaxp.properties e xerces.properties no diretório ${app_server_root}/jre/lib. O valor XMLParserConfiguration poderá mudar à medida em que forem fornecidas novas versões de Xerces.
- Como visualizar ou configurar: Insira as linhas abaixo em ambos os arquivos:
Também é possível consultar os arquivos jre/lib/jaxp.properties e jre/lib/xerces.properties fornecidos com a instalação do JDK. Esses arquivos de amostra contêm as configurações recomendadas.javax.xml.parsers.SAXParserFactory=org.apache.xerces.jaxp.SAXParserFactoryImpl javax.xml.parsers.DocumentBuildFactory=org.apache.xerces.jaxp. DocumentBuilderFactoryImpl org.apache.xerces.xni.parser.XMLParserConfiguration=org.apache.xerces.parsers. XIncludeAwareParserConfiguration
- Valor padrão: Nenhum
- Valor recomendado: Nenhum
- Sintonize o serviço de cache dinâmico.
O uso do serviço de cache dinâmico pode melhorar o desempenho. Consulte as informações sobre como usar o servidor de cache dinâmico para melhorar o desempenho para obter dicas sobre como usar o serviço de cache dinâmico e como ele pode afetar o desempenho do servidor de aplicativos.
Sintonize o contêiner da web. O contêiner da web do produto gerencia todas as solicitações de HTTP feitas para servlets, JavaServer Pages e serviços da web. O fluxo de solicitações vai para o contêiner da web por meio de uma cadeia de transporte. A cadeia de transporte define os importantes parâmetros de ajuste de desempenho para o contêiner da web. Existe uma cadeia de transporte para cada porta TCP na qual o produto está atendendo solicitações de HTTP. Por exemplo, a porta HTTP 9080 padrão é definida na cadeia do canal de entrada do contêiner da web. Use os seguintes parâmetros para sintonizar o contêiner da web:
- As solicitações de HTTP são processadas por um conjunto de encadeamentos do servidor. Para um melhor desempenho, é possível configurar os tamanhos mínimo e máximo do conjunto de encadeamentos para o contêiner da web. Geralmente, 5 a 10 encadeamentos por CPU do servidor oferecem o melhor resultado. O número de encadeamentos configurados não representa o número de solicitações que o produto pode processar simultaneamente. Quando todos os encadeamentos estão ocupados, as solicitações são enfileiradas na cadeia de transporte. Para especificar as configurações do conjunto de encadeamentos:
- Clique em Servidores > Tipos de Servidor > WebSphere Application Servers >server_name Configurações do Contêiner da Web > Contêiner da Web > Cadeias de Transporte do Contêiner da Web.
- Selecione a cadeia de entrada normal para solicitações de entrega. Essa cadeia geralmente é chamada de WCInboundDefault e atende na porta 9080.
- Clique em Canal de Entrada TCP (TCP_2).
- Configure Conjuntos de Encadeamentos em Itens Relacionados.
- Selecione WebContainer.
- Insira valores para Tamanho Mínimo e Tamanho Máximo.
- O protocolo HTTP 1.1 fornece um recurso keep-alive para permitir que a conexão TCP entre clientes HTTP e o servidor permaneça aberta entre as solicitações. Por padrão, o produto fecha determinada conexão do cliente após um número de solicitações ou um período de tempo limite. Depois que uma conexão é fechada, ela é recriada se o cliente emite outra solicitação. O encerramento precoce de conexões pode reduzir o desempenho. Insira um valor para o número máximo de solicitações persistentes de (keep-alive) para especificar o número de solicitações permitidas em uma única conexão HTTP. Insira um valor para os tempos limite persistentes para especificar o período de tempo, em segundos, que o canal de transporte HTTP permite que um soquete permaneça inativo entre as solicitações. Para especificar valores para Máximo de Solicitações Persistentes e Tempo Limite Persistente:
- Clique em Servidores > Tipos de Servidor > WebSphere Application Servers >server_name. Na seção Configurações do Contêiner, clique em Contêiner da Web > Cadeias de Transporte do Contêiner da Web.
- Selecione a cadeia de entrada normal para solicitações de entrega. Essa cadeia geralmente é chamada de WCInboundDefault e atende na porta 9080.
- Clique em Canal de Entrada HTTP (HTTP_2).
- Insira valores para Máximo de Solicitações Persistentes e Tempo Limite Persistente.
- As solicitações de HTTP são processadas por um conjunto de encadeamentos do servidor. Para um melhor desempenho, é possível configurar os tamanhos mínimo e máximo do conjunto de encadeamentos para o contêiner da web. Geralmente, 5 a 10 encadeamentos por CPU do servidor oferecem o melhor resultado. O número de encadeamentos configurados não representa o número de solicitações que o produto pode processar simultaneamente. Quando todos os encadeamentos estão ocupados, as solicitações são enfileiradas na cadeia de transporte. Para especificar as configurações do conjunto de encadeamentos:
- Sintonize o contêiner EJB. Quando um servidor de aplicativos é criado, é criado automaticamente um contêiner Enterprise JavaBeans (EJB). Após a implementação do contêiner EJB, é possível usar os parâmetros a seguir para fazer os ajustes que melhoram o desempenho.
- Configure o Intervalo de Limpeza e o Tamanho do Cache. Para obter informações adicionais, consulte o tópico sobre as configurações do cache EJB.
- Quebre enterprise beans de CMP em vários módulos de enterprise bean. Para obter informações adicionais, consulte o tópico sobre a montagem de módulos EJB.
Para obter informações adicionais, consulte o tópico sobre o enfileiramento da chamada de método do EJB.
- Sintonize o gerenciamento de sessões.
As configurações padrão instaladas para o gerenciamento de sessões são ideais para o desempenho.
- Ajustar as origens de dados e pools de conexão associados. Uma origem de dados é usada para acessar os dados do banco de dados; ela é associada a um conjunto de conexões com esse banco de dados.
- Revise o tópico sobre a definição do conjunto de conexões para entender como o número de conexões físicas dentro de um conjunto de conexões pode alterar o desempenho.
Use o tópico sobre os parâmetros de ajuste do acesso a dados como referência para obter as propriedades da origem de dados e do conjunto de conexões que mais afetam o desempenho.
- Sintonize o cache de chamada de URL.
Cada JavaServer Page é uma URL exclusiva. Se você tiver mais de 50 URLs exclusivas que estão sendo ativamente usadas, aumente o valor especificado para a propriedade customizada invocationCacheSize da JVM. Essa propriedade controla o tamanho do cache de chamada da URL.
Altere a frequência com que o serviço do log de recuperação tenta compactar os fluxos de registro usados pelos componentes do aplicativo.
A propriedade customizada RLS_LOGSTREAM_COMPRESS_INTERVAL do Serviço de Transações pode ser configurada com um valor maior que o valor padrão se o Serviço de Transações for o único componente de aplicativo que está usando um fluxo de registro. Se nenhum componente estiver configurado para usar um fluxo de registro, é possível configurar essa propriedade como 0 (zero) para desativar essa função.
Subtópicos
Ajustando o Servidor de Aplicativos Utilizando Modelos de Ajuste Predefinidos
É possível usar o script de ajuste baseado em Python, applyPerfTuningTemplate.py, juntamente com um de seus arquivos de modelo, para aplicar modelos de ajuste de desempenho predefinidos em seu servidor de aplicativos ou cluster. Os arquivos de modelo baseados em propriedade estão localizados no diretório WAS_HOME\scriptLibraries\perfTuning\V70. O caminho para o arquivo de script é wsadmin -f <WAS_HOME>\bin\applyPerfTuningTemplate.py.Cliente de Serviços da Web para Comunicação Otimizada por Contêiner da Web
Para melhorar o desempenho, há um caminho de comunicação otimizado entre um aplicativo de cliente de serviços da Web e um contêiner da Web que está localizado no mesmo processo do servidor de aplicativos. As solicitações a partir do cliente de serviços da Web que normalmente são enviadas para o contêiner da Web usando uma conexão de rede são entregues diretamente para o contêiner da Web usando um caminho local otimizado. O caminho local está disponível, porque o aplicativo cliente de serviços da Web e o contêiner da Web estão em execução no mesmo processo.


http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tprf_tuneappserv
Nome do arquivo: tprf_tuneappserv.html