Dedicated JMS server

You should consider running the JMS server on one or more dedicated WebLogic servers that is outside the Sterling Order Management System Software WebLogic cluster. These server instances should only provide JMS services.

The benefits of isolating the JMS server on its own server include:

  • Easier to monitor and manage
  • Easier to diagnose issues - Issues that arise, such as OutOfMemory exceptions, must be related to JMS services or JMS messages.

Integration queues

In addition, you should consider putting integration queues into their own dedicated WebLogic JMS servers running on separate JVMs especially if these queues can grow unbounded or at a fast rate.

These integration queues should be configured as persistent so that messages can be recovered after JMS failures. Recovering integration messages can be difficult especially if they involve reconciling when there are many systems or applications involved in processing the messages.

You should consider implementing controls so that producers cannot significantly create messages faster than consumers can process messages. In extreme cases, high number of messages in the queue could consume most of the JMS servers's JVM heap resulting in degraded or loss of service.

The benefits of implementing dedicated JMS servers for integration queues include:

  • Isolating integration-based message queues that could grow unbounded from the more predicable queues used by the Sterling Order Management System Software agents.
  • The ability to configure, manage, and monitor the queues to the expected message traffic - for example, you may want to create JVMs with 1GB heap for integration-based JMS servers and smaller heaps for the Sterling Order Management System Software agents.