Wednesday, March 21, 2012

Sharing persistent stores

The question arises. In WebLogic Server, should you share persistent stores across your JMS modules?

Let's say that you have 2 separate JMS modules, each hosting a slew of queues and topics:
  • IPNWebErrorModule (contains JMS queues used exclusively by our error handling code)
  • IPNWebERPModule   (contains JMS queues and topics specific to our ERP code)

The short answer is found in the Best Practices When Using Persistent Stores in the Oracle documentation:
For subsystems that share the same server instance, share one store between multiple subsystems rather than using a store per subsystem. Sharing a store is more efficient for the following reasons:
  • A single store batches concurrent requests into single I/Os which reduces overall disk usage.
  • Transactions in which only one resource participates are lightweight one-phase transactions. Conversely, transactions in which multiple stores participate become heavier weight two-phase transactions.

Applicable Versions
  • Oracle WebLogic Server 11g

References
  • http://docs.oracle.com/cd/E17904_01/web.1111/e13814/storetune.htm

Ahmed Aboulnaga

No comments: