![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[z/OS]](../images/ngzos.gif)
Partage de verrous entre des branches de transaction
Vous pouvez spécifier que plusieurs composants d'application sur différents serveurs d'applications peuvent partager l'accès aux données dans une base de données DB2 unique, sous la même transaction globale. Vous indiquez que les différentes branches de transaction partagent des verrous sous la transaction globale.
Pour ce faire, vous définissez l'attribut de couplage de branche par les références de ressource pour les connexions DB2 partagées dans l'application.
Généralement, les composants d'application peuvent partager des verrous uniquement lorsque ces composants d'application sont situés sur le même serveur.
Le partage de verrous entre les branches de transaction signifie que des connexions JDBC (DB2 Java™ Database Connectivity) multiples, qui sont dans la même transaction, à partir du même serveur ou de différents serveurs, peuvent partager des verrous lors de l'accès aux données. De cette manière, plusieurs composants peuvent accéder aux données sans causer de dépassement du délai d'attente ou d'autres situations indésirables.
Le partage de verrous entre les branches de transaction a pour avantage que deux EJB (Enterprise JavaBeans) sur deux serveurs peuvent partager la visibilité des données et les verrous sur ces données, dans une transaction répartie. Par conséquent, l'accès partagé aux données ne dépend pas de l'emplacement du composant d'application.
<resource-ref name="jdbc/DataSource_LockSharing" branch-coupling="TIGHT"/>
Si vous n'indiquez pas de valeur de couplage de branche, la valeur par défaut loose est utilisée, c'est-à-dire que les branches de transaction ne partagent pas les verrous.Vous pouvez définir l'attribut de couplage de branches sur la référence de ressource DB2 de l'application à l'aide des outils Rational Application Developer. Pour des informations détaillées, voir le centre de documentation de Rational Application Developer. Le composant d'application doit posséder un descripteur de déploiement. Vous ne pouvez pas indiquer cet attribut si une annotation a été utilisée.
- La base de données doit être DB2 sur un système d'exploitation distribué ou z/OS.
- Le fournisseur JDBC doit être DB2 et utiliser le pilote IBM® JCC version 3.51 et ultérieures, version 3.6 et ultérieures ou version 4.1 et ultérieures.
- Les connexions doivent utiliser la connectivité de type 4 JDBC vers l'une des bases suivantes :
- DB2 Universal Database (DB2 UDB) version 8 et ultérieures
- DB2 UDB for z/OS version 8 avec modification provisoire du logiciel UK27815 et ultérieures
- DB2 UDB for z/OS Version 9.1 avec groupe de correctifs 4 et suivants
- DB2 UDB for z/OS Version 9.5 et versions suivantes