Estenda as definições de origens de dados que consistem de propriedades não críticas ou customizadas para as origens de dados do DB2, para incluir um nível maior de flexibilidade de aplicativo quando estiver utilizando o driver JDBC do DB2 Universal ou o driver JCC do DB2 Using IBM®. Esse recurso é referido, às vezes, como
conjunto heterogêneo. Utilize esse recurso para configurar uma origem de dados do DB2 no servidor de aplicativos com um conjunto de propriedades de origem de dados críticas, e adiar para aplicativos individuais para definir quaisquer propriedades customizadas ou não críticas, como currentSchema ou clientApplicationInformation, que você deseja que sejam específicas do aplicativo. Também é possível utilizar essas definições estendidas para substituir quaisquer propriedades não críticas ou customizadas que já estão definidas para a origem de dados. Além disso, esse recurso pode reduzir o número de conexões físicas que o servidor de aplicativos utiliza, ao empregar um conjunto de conexões entre recursos conectados à mesma origem de dados.
Antes de Iniciar
Utilize uma origem de dados do DB2 que deverá ser configurada no servidor de aplicativos com um dos seguintes provedores JDBC:
- Driver DB2 Universal JDBC
(Versão 4.3.81 ou posterior)
- DB2 Utilizando driver IBM JCC (Versão 3.53.65 ou posterior)
Sobre Esta Tarefa
Associe propriedades não críticas a diferentes referências de recursos para uma origem de dados, e configure seus aplicativos para aproveitar essas referências de recursos para estender ou substituir quaisquer propriedades não críticas para a origem de dados. É possível escolher definir novas propriedades não críticas ou customizadas, ou substituir quaisquer propriedades não críticas que já estão definidas para a origem de dados.
Além disso, os aplicativos podem compartilhar o mesmo conjunto de conexões no servidor de aplicativos, mesmo se cada aplicativo possuir seu próprio conjunto exclusivo de propriedades de origem de dados. Pode haver apenas uma origem de dados definida no servidor de aplicativos e, portanto, apenas um conjunto de conexões, mas para aplicativos individuais, aparentará haver mais de uma origem de dados do que foi definido.
Isso pode resultar em:
- Redução de consumo de memória pelo servidor de aplicativos. As definições da origem de dados corresponderão a um conjunto de conexões, portanto, haverá menos objetos na memória em comparação a uma definição de origem de dados que corresponde ao seu próprio conjunto de conexões.
- Redução do número de conexões abertas para a origem de dados, que poderá reduzir o consumo de memória pela origem de dados. O servidor de aplicativos pode reduzir o número de conexões ociosas, fornecendo um conjunto de conexões que corresponde a diversas origens de dados, fornecendo um uso mais eficiente das conexões.
- Impedimento de transações two-phase commit (XA) em determinados cenários do DB2, quando seus aplicativos utilizam o padrão de conexão obter/utilizar/fechar. O servidor de aplicativos pode compartilhar conexões entre diferentes referências de recursos que têm o mesmo conjunto de propriedades críticas, mesmo se tiverem propriedades não críticas diferentes na mesma transação. Esse comportamento pode evitar o processamento two-phase commit se o compartilhamento de conexões levar o servidor de aplicativos a utilizar uma, e somente uma, conexão física.
Procedimento
- Atualize as definições de origens de dados para um aplicativo que já está instalado.
- Navegue até o painel para gerenciar as referências de recursos para o aplicativo.
- Para aplicativos que não utilizam a persistência gerenciada por contêiner, clique em .
- Para aplicativos que utilizam a persistência gerenciada por contêiner, clique em . Não é possível incluir propriedades estendidas para beans CMP individuais.
- Você pode configurar dois arquivos de referência de recurso na mesma origem de
dados. Isso permite que você estenda as propriedades customizadas na origem de dados para incluir dois nomes de esquema diferentes (currentSQLId no z/OS ou nome currentSchema nas propriedades customizadas) que podem ser utilizadas para explorar os recursos do servidor de aplicativos. Consulte o tópico
Configurar Dois Arquivos de Referência de Recurso na mesma Origem de Dados para obter
informações adicionais.
Nota: Para IBM Optim PureQuery Runtime, se esta for uma origem de dados XA, você deve definir uma nova propriedade customizada na origem de dados em que property_name = downgradeHoldCursorsUnderXa e
valor booleano = true.
- Navegue até o painel das propriedades de origens de dados estendidas. Selecione um recurso na tabela e clique em Propriedades
Estendidas... no painel acima das linhas da tabela. Se a origem de dados não suportar as propriedades das origens de dados estendidas, você receberá um erro ao tentar aplicar essas alterações.
- Inclua uma ou mais propriedades customizadas de origem de dados estendida
que sejam específicas para esse recurso de destino. Clique em Novo e preencha os campos necessários. Repita esta etapa para cada propriedade
para a qual deseja estender a origem de dados. Quando concluído, clique em OK para
retornar à tela anterior. Não é possível modificar as seguintes propriedades da origem de dados, que devem ser as mesmas para todos os aplicativos que utilizam essa origem de dados:
- accountingInterval
- dataSourceName
- databaseName
- kerberosServerPrincipal
- loginTimeout
- logWriter
- senha
- pkList
- planName
- portNumber
- readOnly
- securityMechanism
- serverName
- user
- Opcional: Configure dois res-refs e o nível de isolamento no
ibm-ejb-jar-ext.xml
- Crie definições de origem de dados para um aplicativo durante a
instalação.
- Navegue até o painel para mapear as referências de recurso
para o aplicativo. Selecione a etapa de instalação Mapear referências
de recurso para recursos e siga as etapas b e c da
etapa 1 que descrevem como atualizar as definições de origem de dados para
um aplicativo que já está instalado.
- Opcional: Para evitar transações two-phase commit, utilize o padrão de conexão obter/utilizar/fechar. O padrão obter/utilizar/fechar é quando um aplicativo obtém uma conexão de uma origem de dados ou connection factory e conclui o trabalho atual em um único método, e o aplicativo não chamará outro método até esse trabalho ser concluído.
- Verifique se seus aplicativos utilizam o padrão de conexão obter/utilizar/fechar.
- Ative o servidor de aplicativos para verificar a utilização do padrão de conexão obter/utilizar/fechar nos aplicativos, que evitará o processamento two-phase commit se o compartilhamento levar ao uso de uma, e somente uma, conexão física.
- Clique em
- Selecione Otimizar para o padrão de conexão obter/utilizar/fechar com criação de conjunto heterogêneo. Você
receberá mensagens de erro se selecionar essa opção e os aplicativos não utilizarem o
padrão de conexão get/use/close.
- Opcional: O conjunto heterogêneo está ativado por
padrão. Sob certas circunstâncias, pode ser desejável
desativar o conjunto heterogêneo de uma origem de dados. Uma propriedade customizada da origem de dados pode ser definida para desativar este suporte ao conjunto. A propriedade customizada da origem de dados é chamada, enableHeterogeneousPooling. Se enableHeterogeneousPooling não for definida para uma origem de dados ou se esta
propriedade existir para uma origem de dados e tiver o valor true,
então o conjunto heterogêneo é ativado. Se enableHeterogeneousPooling for
definido para uma origem de dados e tiver o valor false,
então o conjunto heterogêneo é desativado. Para definir enableHeterogeneousPooling para
uma origem de dados e desativar o conjunto heterogêneo, execute as seguintes
etapas:
- Clique em Recursos > Provedor JDBC > JDBC_provider
- Em propriedades adicionais, clique em Origens de dados.
- Clique no nome da origem de dados.
- Crie a propriedade customizada enableHeterogeneousPooling.
- Clique em Novo.
- Digite enableHeterogeneousPooling para o campo Nome.
- Digite false no campo Valor para especificar que
você deseja desativar o conjunto heterogêneo.
- Clique em Aplicar, em seguida, Salvar.