Pregunta

Estoy usando Oracle colas avanzadas a través de JMS desde dentro del servidor de aplicaciones Websphere.

¿Alguien sabe qué efecto tienen las siguientes dos propiedades tienen: -

 - oracle.jms.useEmulatedXA
 - oracle.jms.useNativeXA

he visto mencionado en algunos blogs y guías de inicio rápido, generalmente en frases a lo largo de las líneas de "Añadir -Doracle.jms.useEmulatedXA = false -Doracle.jms.useNativeXA = true a la variable JAVA_PROPERTIES", sin ninguna explicación a lo que hacen: -

por ejemplo.

Soy curioso en cuanto a lo que estas dos propiedades hacen realmente, y cuáles son las consecuencias de la creación de ellos son, a pesar de que no parece tener ningún efecto en nuestra aplicación independientemente de si nos fijamos ellos o no.

buscar en Google no ha dado ninguna respuesta, ¿alguien tiene alguna idea de lo que hacen en realidad?

¿Fue útil?

Solución

Esperamos que este enlace será explicar las cosas en detalle: http://bit.ly/bsl9Un Los bits relevantes incluir lo siguiente ...

  

fuentes de datos emulados son las fuentes de datos   que emular el protocolo XA para JTA   actas. fuentes de datos emulados   OC4J oferta de almacenamiento en caché, la puesta en común, y   extensiones de JDBC de Oracle para datos de Oracle   fuentes. Históricamente, los datos emulado   fuentes eran necesarias porque muchos   controladores JDBC no proporcionaron XA   capacidades. Hoy en día, aunque la mayoría   controladores JDBC proporcionan XA   capacidades, todavía hay casos en   que emulado se prefiere XA (tales   como transacciones que no requieren   confirmación de dos fases.)

     

Conexiones obtiene a partir emulado   fuentes de datos son extremadamente rápidos,   porque las conexiones emulan el XA   API sin proporcionar plena XA mundial   soporte transaccional. En particular,   fuentes de datos emulados no son compatibles   confirmación de dos fases. Oracle recomienda   que utilice fuentes de datos para emulados   las transacciones locales, o cuando su   aplicación utiliza las transacciones globales   sin necesidad de confirmación de dos fases.

Y ...

  

fuentes de datos permiten una total Nonemulated   (nonemulated) Servicios de JTA, incluyendo   Confirmación en dos fases capacidades para   transacciones globales. datos Nonemulated   fuentes ofrecen la puesta en común, el almacenamiento en caché,   distribuidos capacidades de transacciones,   y el proveedor de JDBC extensiones (en la actualidad,   sólo extensiones de Oracle JDBC). por   información sobre las limitaciones de   En dos fases, véase el capítulo 7, "Java   API de transacción".

     

Oracle recomienda que utilice   fuentes de datos para nonemulated   comunicaciones de bases de datos distribuidas,   la recuperación y fiabilidad. Nonemulated   fuentes de datos comparten física   conexiones para conexiones lógicas a   la misma base de datos para el mismo usuario.

Así que lo que está sucediendo cuando ha ajustado emulado XA es que su aplicación piensa se está haciendo XA pero las llamadas están optimizados o traducida a monofásica cometió. Cuando se especifica no emulado XA entonces usted está recibiendo la funcionalidad completa XA. De cualquier manera, la aplicación es felizmente inconsciente.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top