Definições do Conjunto de Sessões

Utilize essa página para configurar definições do conjunto de sessões.

Essa página do console administrativo é comum para vários tipos de recursos, por exemplo, fábricas de conexão de filas JMS. Para visualizar essa página, o caminho depende do tipo de recurso, mas geralmente você seleciona uma instância do provedor de recursos e depois uma instância do tipo de recurso e clica em Conjunto de Sessões. Por exemplo: clique em Recursos > Provedores JMS do WebSphere > Fábricas de Conexões de Filas do WebSphere > fábrica_de_conexão > Conjunto de Sessões.

Guia Configuração

Escopo
Especifique o nível no qual esta definição de recurso é visível -- célula, nó ou nível de servidor.

Recursos como Provedores JDBC, Ligações de espaço de nomes ou bibliotecas compartilhadas podem ser definidos em vários escopos, com os recursos definidos em escopos mais específicos substituindo duplicatas definidas em escopos mais gerais.

Observe que independentemente do escopo de um recurso definido, as propriedades do recurso aplicam-se apenas a um nível de servidor individual. Por exemplo, se o escopo de uma origem de dados for definido no nível Célula, todos os usuários daquela Célula poderão consultar e utilizar a origem de dados, que é exclusiva naquela Célula. Entretanto, as definições de propriedade de recursos são locais para cada servidor na Célula. Por exemplo, se você definir Máximo de Conexões para 10, então cada servidor naquela Célula poderá ter 10 conexões.

Célula
O escopo mais geral. Os recursos definidos no escopo Célula são visíveis a partir de todos os Nós e servidores, a menos que sejam substituídos. Para exibir recursos definidos no escopo célula, não especifique um nome de servidor ou nó no formulário de seleção de escopo.
O escopo padrão para a maioria dos tipos de recursos. Os recursos definidos no escopo Nó substituem todas as duplicatas definidas no escopo Célula e ficam visíveis para todos os servidores no mesmo nó, a menos que sejam substituídos em um escopo do servidor naquele nó. Para exibir recursos definidos no escopo nó, não especifique um servidor, mas selecione um nome de nó no formulário de seleção de escopo.
Servidor
O escopo mais específico para definir recursos. Os recursos definidos no escopo Servidor substituem todas as definições de recurso em duplicata definidas no escopo Célula ou escopo Nó pai e ficam visíveis somente para um servidor específico. Para exibir recursos definidos em um escopo de servidor, especifique um nome do servidor bem como um nome de nó no formulário de seleção de escopo.

Quando os recursos forem criados, eles serão sempre criados no escopo atual selecionado no painel. Para exibir recursos em outros escopos, especifique um nó ou servidor diferente no formulário de seleção de escopo.

Tipo de Dados String
Tempo Limite de Conexão
Especifica o intervalo, em segundos, do tempo limite de um pedido de conexão, onde é emitida uma ConnectionWaitTimeoutException quando o mesmo for excedido.

A espera é necessária quando o valor máximo de conexões (Número Máximo de Conexões) a um determinado conjunto de conexões for atingido.Por exemplo, se Tempo Limite de Conexão estiver definido como 300 e o número máximo de conexões for alcançado, o Gerenciador de Conjunto aguardará 300 segundos por uma conexão física disponível. Se uma conexão física não estiver disponível neste período, o Gerenciador de Conjunto emitirá uma ConnectionWaitTimeoutException. Geralmente não faz sentido tentar novamente o método getConnection(), pois se um tempo de espera mais longo for necessário, você deverá definir o Tempo Limite de Conexão com um valor menor. Portanto, se esta exceção for detectada pelo aplicativo, o administrador deve rever a utilização esperada do aplicativo e ajustar o conjunto de conexões e o banco de dados de acordo.

Se o Tempo Limite de Conexão for definido como 0, o Gerenciador de Conjunto aguardará até que uma conexão seja alocada (isso acontece quando o número de conexões fica abaixo do valor do Número Máximo de Conexões).

Se o Número Máximo de Conexões for definido para 0, o que permite um número infinito de conexões físicas, então o valor Tempo Limite de Conexão será ignorado.

Tipo de Dados Inteiro
Unidades Segundos
Padrão 180
Intervalo 0 a max int
Número Máximo de Conexões
Especifica o número máximo de conexões físicas que podem ser criadas no conjunto.

Estas são as conexões físicas para o recurso backend. Quando esse número for atingido, nenhuma nova conexão física será criada e o solicitante aguardará até uma conexão física atualmente em utilização retornar ao conjunto ou até uma ConnectionWaitTimeoutException ser emitida.

Por exemplo, se o valor Número Máximo de Conexões estiver definido para 5 e houver cinco conexões físicas em utilização, o gerenciador do conjunto aguardará o período de tempo especificado em Tempo Limite de Conexão para que uma conexão física seja liberada.

Se Número Máximo de Conexões estiver definido para 0, o valor de Tempo Limite de Conexão será ignorado.

Para um melhor desempenho, defina o valor do conjunto de conexões inferior ao valor da opção Número Máximo de Conexões no contêiner da Web. Definições mais baixas, como 10-30 conexões, têm melhor desempenho do que definições mais altas, como 100.

Se clones forem utilizados, um conjunto de dados existirá para cada clone. Saber o número de conjuntos de dados é importante ao configurar o número máximo de conexões de bancos de dados.

O Tivoli Performance Viewer pode ser utilizado para encontrar o melhor número de conexões em um conjunto. Se o número de solicitantes em espera simultaneamente for maior que 0, mas a carga da CPU não estiver próxima a 100%, considere o aumento do tamanho do conjunto de conexões. Se o valor Percentual de Utilização for consistentemente baixo durante a carga de trabalho normal, considere a redução do número de conexões no conjunto.

Tipo de Dados Inteiro
Padrão 10
Intervalo 0 a max int
Número Mínimo de Conexões
Especifica o número mínimo de conexões físicas a serem mantidas.

Até o número ser atingido, o encadeamento da manutenção do conjunto não descarta as conexões físicas. No entanto, não será feita nenhuma tentativa para que o número de conexões chegue até esse número. Se você definir um valor para Tempo Limite Transcorrido, o mínimo não será mantido. Todas as conexões com um tempo transcorrido expirado serão descartadas.

Por exemplo, se o valor Número Mínimo de Conexões for definido como 3 e se for criada uma conexão física, o encadeamento de Tempo Limite Não-utilizado não descartará essa conexão. Pelo mesmo token, o encadeamento não cria automaticamente duas conexões físicas adicionais para atingir a definição Número Mínimo de Conexões.

Tipo de Dados Inteiro
Padrão 1
Intervalo 0 a max int
Tempo de Coleta
Especifica o intervalo, em segundos, entre execuções do thread de manutenção do conjunto.

Por exemplo, se o Tempo de Coleta estiver definido como 60, o encadeamento de manutenção do conjunto será executado a cada 60 segundos. O intervalo de Tempo de Coleta afeta a precisão das definições Tempo Limite Não-utilizado e Tempo Limite Transcorrido. Quanto menor o intervalo, maior a exatidão. Se o thread de manutenção do conjunto estiver ativado, defina o valor Tempo de Coleta como menor do que os valores de Tempo Limite Não Utilizado e Tempo Limite Transcorrido. Quando o encadeamento de manutenção do conjunto for executado, ele descartará todas as conexões que permanecem sem utilização por um tempo maior do que o valor de tempo especificado em Tempo Limite Não Utilizado, até atingir o número de conexões especificado em Número Mínimo de Conexões.O thread de manutenção do conjunto também descarta todas as conexões que ficaram ativas além do valor de tempo especificado em Tempo Limite Transcorrido.

O intervalo Tempo de Coleta também afeta o desempenho. Intervalos mais curtos significam que o thread de manutenção do conjunto é executado com mais freqüência e diminui o desempenho.

Para desativar o thread de manutenção do conjunto, defina Tempo de Coleta como 0 ou defina Tempo Limite Não Utilizado ou Tempo Limite Transcorrido como 0. A forma recomendada para desativar o thread de manutenção do conjunto é definir Tempo de Coleta como 0, nesse caso, Tempo Limite Não Utilizado e Tempo Limite Transcorrido serão ignorados. No entanto, se Tempo Limite Não Utilizado e Tempo Limite Transcorrido estiverem definidos como 0, o thread de manutenção do conjunto será executado, mas somente as conexões físicas que excederem o tempo limite devido a valores de tempo limite diferentes de 0 serão descartadas.

Tipo de Dados Inteiro
Unidades Segundos
Padrão 180
Intervalo 0 a max int
Tempo Limite Não Utilizado
Especifica o intervalo em segundos após o qual uma conexão não utilizada ou ociosa é descartada.

Defina o valor Tempo Limite Não Utilizado como um valor maior que o valor Tempo Limite de Coleta para obter melhor desempenho. As conexões físicas não-utilizadas são descartadas somente se o número atual de conexões não-utilizadas exceder a definição Número Mínimo de Conexões. Por exemplo, se o valor de tempo limite não utilizado for definido como 120 e o thread de manutenção do conjunto for ativado (Tempo de Coleta não for 0), as conexões físicas que permanecerem sem utilização por dois minutos serão descartadas. Observe que a precisão desse tempo limite, bem como o desempenho, é afetada pelo valor Tempo de Coleta. Para obter informações adicionais, consulte Tempo de Coleta.

Tipo de Dados Inteiro
Unidades Segundos
Padrão 1800
Intervalo 0 a max int
Tempo Limite Transcorrido
Especifica o intervalo em segundos antes de uma conexão física ser descartada.

Definir Tempo Limite Transcorrido para 0 suportará que conexões físicas ativas permaneçam no conjunto indefinidamente. Defina o Tempo Limite Transcorrido para um valor maior que o Tempo Limite de Coleta para obter um melhor desempenho. Por exemplo, se o valor de Tempo Limite Transcorrido for definido para 1200 e o valor de Tempo de Coleta não for igual a 0, todas as conexões físicas que permanecerem existentes por 1200 segundos (20 minutos) serão descartadas do conjunto. Observe que a precisão desse tempo limite, assim como o desempenho, são afetados pelo valor de Tempo de Coleta. Para obter informações adicionais, consulte Tempo de Coleta.

Tipo de Dados Inteiro
Unidades Segundos
Padrão 0
Intervalo 0 a max int
Política de Análise
Especifica como analisar conexões quando uma conexão danificada ou erro de conexão fatal é detectado.

Valores válidos são EntirePool e FailingConnectionOnly. Origens de dados JCA podem ter qualquer uma dessas opções. Origens de dados do WebSphere Versão 4.0 sempre têm um critério de limpeza de EntirePool.

Tipo de Dados String
Padrão FailingConnectionOnly
Intervalo
EntirePool
Todas as conexões no conjunto são marcadas como stale. Todas as conexões que não estiverem sendo utilizadas serão fechadas imediatamente. Uma conexão em utilização será fechada e emitirá um StaleConnectionException durante a próxima operação da conexão. Solicitações getConnection subseqüentes do aplicativo resultam na aberta de novas conexões com o banco de dados. Ao utilizar esse critério de remoção, há uma pequena possibilidade de algumas conexões do conjunto serem fechadas de forma desnecessária quando não estão stale. No entanto, isso ocorre raramente. Na maioria das vezes, um critério de remoção EntirePool é a melhor opção.
FailingConnectionOnly
Somente a conexão que provocou o StaleConnectionException é fechada. Apesar desta definição eliminar a possbilidade de conexões válidas serem fechadas desnecessariamente, ela torna a recuperação da perspectiva de um aplicativo mais complicada. Como somente a conexão em falha atual é fechada, há uma boa chance da próxima solicitação getConnection do aplicativo retornar uma conexão do conjunto que também esteja stale, resultando em mais exceções de conexão stale.

Informações relacionadas

Botões do console administrativo
Recursos de páginas do console administrativo