Est-ce que quelqu'un sait ce que ces propriétés JMS Oracle AQ XA faire?
-
30-09-2019 - |
Question
J'utilise Oracle via JMS Queues avancée à partir de Websphere App Server.
Quelqu'un sait quel effet les deux propriétés suivantes ont: -
- oracle.jms.useEmulatedXA
- oracle.jms.useNativeXA
J'ai vu mentionné dans certains blogs et guides de démarrage rapide, le plus souvent dans des phrases le long des lignes de « Ajouter -Doracle.jms.useEmulatedXA = false -Doracle.jms.useNativeXA = true à la variable JAVA_PROPERTIES », sans aucune explication à ce qu'ils font: -
par exemple.
- http://biemond.blogspot.com /2008/11/using-aq-in-weblogic-103.html
- http://sqltech.cl/doc/oas10gR31 /integrate.1013/b28994/adptr_aq.htm#CHDEADFB
Je suis curieux de savoir ce que ces deux propriétés font réellement, et quelles sont les implications de leur mise en sont, même si elles ne semblent pas avoir d'effet sur notre application indépendamment du fait que nous les fixons ou non.
recherche sur Google n'a pas donné de réponses, que quelqu'un a une idée de ce qu'ils font?
La solution
Espérons que ce lien vous expliquera les choses en détail: http://bit.ly/bsl9Un Les bits correspondants inclure ce qui suit ...
sources de données sont émulés sources de données qui émuler le protocole XA pour JTA transactions. sources de données émulés offre la mise en cache de OC4J, la mise en commun et extensions JDBC d'Oracle pour les données Oracle sources. Historiquement, les données émulé sources étaient nécessaires parce que beaucoup pilotes JDBC ne fournissent XA capacités. Aujourd'hui, même si la plupart pilotes JDBC ne fournissent XA capacités, il y a encore des cas dans qui émulé XA est préféré (par exemple, comme des transactions qui ne nécessitent pas validation en deux phases).
Connexions obtenu à partir émulé sources de données sont extrêmement rapides, parce que les connexions émulent le XA API sans fournir globale complète XA support transactionnel. En particulier, sources de données émulés ne supportent pas validation en deux phases. Oracle recommande que vous utilisez des sources de données pour émulés les transactions locales, ou lorsque votre application utilise les transactions globales sans nécessiter de validation en deux phases.
...
sources de données fournissent Nonemulated complète (nonemulated) Services de JTA, y compris validation en deux phases pour des capacités transactions globales. données Nonemulated sources offrent la mise en commun, la mise en cache, capacités réparties de transactions, et extensions fournisseur JDBC (actuellement, que les extensions JDBC d'Oracle). Pour informations sur les limites de validation en deux phases, voir le chapitre 7, « Java API de transaction ».
Oracle vous recommande d'utiliser sources de données pour nonemulated communication de bases de données réparties, la récupération et la fiabilité. Nonemulated sources de données partagent physique des connexions pour des connexions logiques à la même base de données pour le même utilisateur.
Alors qu'est-ce qui se passe lorsque vous définissez XA émulé est que votre application pense il devient XA, mais les appels sont optimisés ou traduits à validation à phase unique. Lorsque vous spécifiez alors XA non émulé vous obtenez toutes les fonctionnalités XA. De toute façon, l'application est parfaitement au courant.