[AIX Solaris HP-UX Linux Windows][IBM i]

Compartilhando Conexões para Aproveitar a Otimização da Consolidação de Fase Única

Em algumas circunstâncias, você pode configurar o aplicativo JMS para compartilhar a conexão JDBC usada por um mecanismo do sistema de mensagens. Compartilhar conexões permite que use a otimização one-phase commit. Isso pode melhorar o desempenho de seu aplicativo.

Sobre Esta Tarefa

Os mecanismos de sistema de mensagens armazenam dados persistentes em um banco de dados e usam uma origem de dados JDBC para interagir com esse banco de dados. Alguns aplicativos JMS também armazenam dados persistentes em um banco de dados, por exemplo, se o aplicativo utilizar beans corporativos de entidade. Normalmente, tais aplicativos utilizam transações de consolidação de duas fases para coordenar atualizações nos recursos do JMS e JDBC envolvidos.
É possível configurar seu aplicativo para compartilhar a conexão JDBC utilizada por um mecanismo do sistema de mensagens, que permite utilizar transações one-phase commit e melhorar o desempenho do aplicativo. É possível se beneficiar da otimização de consolidação de uma fase nas seguintes circunstâncias:
  • Seu aplicativo deve utilizar o atributo de confiabilidade de persistente assegurado para suas mensagens JMS.
  • O aplicativo deve usar beans de entidade de persistência gerenciada por contêiner (CMP) ligadas à mesma origem de dados JDBC que o mecanismo do sistema de mensagens usa para o armazém de dados.
Restrição: Você não pode se beneficiar da otimização de consolidação de uma fase nas seguintes circunstâncias:
  • Se seu aplicativo utilizar um atributo de confiabilidade diferente de persistente assegurado para suas mensagens JMS.
  • Se o aplicativo utilizar beans de entidade BMP ou clientes JDBC.
  • Se seu aplicativo utilizar o DB2 HADR (High Availability Disaster Recovery).

Antes de configurar o sistema, certifique-se de considerar todos os componentes do aplicativo Java EE que poderão ser afetados por one-phase commits.

Procedimento

  1. Selecione o atributo de confiabilidade de persistente assegurado para suas mensagens JMS.
  2. Implemente todos os beans corporativos CMP envolvidos em transações de confirmação de fase única com res-auth configurado para Contêiner.
  3. Implemente todos os enterprise beans de CMP envolvidos nas transações one-phase commit, nas quais o AccessIntent mapeia o nível de isolamento de transação do Cometido pela Leitura de JDBC. É possível escolher qualquer um dos seguintes valores para AccessIntent:
    • WSOptimisticUpdate
    • WSOptimisticRead
    • WSPessimisticUpdate-NoCollisions
    Dica do Oracle: Todos os valores de AccessIntent, exceto WSPessimisticUpdateExclusive, são mapeados para o nível de isolamento de transação JDBC Lido Consolidado.
    Dica do DB2: É possível utilizar qualquer valor para AccessIntent, pois o WebSphere Application Server explora o suporte ao nível de isolamento de transação dinâmico do DB2.
  4. Assegure-se de utilizar o mesmo alias de autenticação para os enterprise beans CMP e o armazém de dados do mecanismo de sistema de mensagens.
  5. Ao configurar a origem de dados JDBC, certifique-se de selecionar a opção Usar Origem de Dados para beans de CMP.
  6. Configure o valor da propriedade customizada da origem de dados JDBC jmsOnePhaseOptimization para true.
  7. Use o connection factory de JMS ou os painéis de especificação de ativação para selecionar a opção Compartilhar Origem de Dados com o CMP.
  8. Ao criar o provedor JDBC e configurar o campo Selecionar o Tipo de Implementação, assegure que Origem de Dados do Conjunto de Conexões (e não Origem de Dados XA) seja selecionado.

Ícone que indica o tipo de tópico Tópico de Tarefa



Ícone de registro de data e hora Última atualização: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tjm0280_
Nome do arquivo: tjm0280_.html