Inside Fusion Middleware 12c: Increasing Scalability with JMS Adapter 12c by Stefan Koser


clip_image002JMS Adapter (also known as Oracle JCA Adapter for JMS) is a component available with Oracle SOA Suite or Oracle Service Bus (OSB) which provides a very powerful way to use  the Java Messaging Service (JMS) for sending or receiving messages.

The most important goals for optimizing an SOA Suite or OSB environment are to make sure that

  • Each node of the cluster makes effective use of Java threads and other resources.
  • The cluster will be able to scale efficiently when adding new nodes.

In this article, we will show how JMS Adapter in the new release 12c can be configured in high throughput scenarios to use much fewer threads that in earlier versions. This means, that adding new nodes to the cluster will not require additional threads in all other nodes. As a result, a cluster with many nodes will perform and scale much better.

There are 2 main use cases of JMS Adapter with SOA Suite or OSB:

  • Inbound activation of a composite by receiving messages from a JMS destination (queue or topic)
  • Publishing messages from a composite to a JMS destination

We will focus in this article on the first use case for receiving messages. Only in that scenario – for listening to a queue, the activation framework of the Java EE Connector Architecture (JCA) layer will start a number of threads for JMS Adapter.

First, we will describe how many threads will be created by default or in versions prior to 12c, and then how this changes when using the new feature available with 12c.

Default thread creation for JMS Adapter

For the first example, we will assume a scenario with a 2-node SOA cluster where a Uniform Distributed Queue (UDQ) “jms/TestQueue” is defined and one SOA composite with an inbound JMS Adapter is listening to this queue. See line 2 of the JMS destination overview in Weblogic server in the following table:

With the default behavior, the number of threads used to read messages from this queue in each Java Virtual Machine (JVM) is one. This is derived from the default of the corresponding configuration parameter: Read the complete article here.

SOA & BPM Partner Community

For regular information on Oracle SOA Suite become a member in the SOA & BPM Partner Community for registration please visit (OPN account required) If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn image[7][2][2][2] Facebook clip_image002[8][4][2][2][2] Wiki

About Jürgen Kress
As a middleware expert Jürgen works at Oracle EMEA Alliances and Channels, responsible for Oracle’s EMEA Fusion Middleware partner business. He is the founder of the Oracle SOA & BPM and the WebLogic Partner Communities and the global Oracle Partner Advisory Councils. With more than 5000 members from all over the world the Middleware Partner Community is the most successful and active community at Oracle. Jürgen manages the community with monthly newsletters, webcasts and conferences. He hosts his annual Fusion Middleware Partner Community Forums and the Fusion Middleware Summer Camps, where more than 200 partners get product updates, roadmap insights and hands-on trainings. Supplemented by many web 2.0 tools like twitter, discussion forums, online communities, blogs and wikis. For the SOA & Cloud Symposium by Thomas Erl, Jürgen is a member of the steering board. He is also a frequent speaker at conferences like the SOA & BPM Integration Days, JAX, UKOUG, OUGN, or OOP.

One Response to Inside Fusion Middleware 12c: Increasing Scalability with JMS Adapter 12c by Stefan Koser

  1. Pingback: LInside Fusion Middleware 12c: Increasing Scalability with JMS Adapter 12c by Stefan Koser | Dinesh Ram Kali.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: