Before we can configure Weblogic JMS resources such as ConnectionFactory, Queue, Topic, it is better to understand some concepts in Weblogic JMS.
JMS Server
JMS server is the management container for JMS resources defined in JMS modules targeted to. A JMS server's main responsibility is to maintain persistent storage for these resources, maintain the state of durable subscriber and etc.
JMS servers are persisted in the domain's config.xml file and multiple JMS servers can be configured on the various WebLogic Server instances in a cluster, as long as they are uniquely named.
One domain can have one or more than one JMS server.
A JMS server can manage one or more JMS modules.
One cluster node has own JMS server targeted to managed node.
For example there are two managed nodes in a clustered environment: osb_ms1 and osb_ms2.
We create two JMS servers: OSB_JMSServer_01 and OSB_JMSServer_02 which are targeting osb_ms01 and osb_ms02 respectively.
JMS Module
JMS modules group JMS configuration resources (such as queues, topics, and connections factories). These are outside domain configuration.
JMS module targets the servers. If it is clustered environment it will target all servers in the cluster.
Subdeployment
Subdeployment is also known as Advanced Targeting.
Subdeployment resource is a bridge between the group of JMS resources and JMS Servers. Without Subdeployment the JMS resources cannot target any JMS server.
When you create a JMS resource you need to choose one Subdeployment.
In clustered environment one Subdeployment targets multiple JMS server for each cluster node.
The below diagram shows the relationship between them.
Steps to configure JMS resources
The following is an example which demostrate the configuration steps for JMS resources in Oracle using Oracle Weblogic Console. This example is done with a single node environment.
1. Create JMS Server
The first step is to create a JMS server. Select the domain in Console. Then click on YourDomain-->Services-->Messaging-->JMS Servers. In the right panel click on New button. And then type in the name for JMS server to be created and select the Persistence Store. If Persistemce Store doesn't exist create a new Persistence Store. Then click on Next button.Select the Weblogic server node and then click on Finish button. Then a JMS server called Demo-JMSServer is created. This Demo-JMSServer is targeted to AdminServer.
2. Create JMS Module
The second step is to create a JMS Module. Select the domain in Console. Then click on YourDomain-->Services-->Messaging-->JMS Modules. In the right panel click on New button. And then type in the name for JMS Module. Then click on Next button.Then select the target of Weblogic server node.
Then click on Next button.
Then click on Finish button. DemoJMSModule is created.
3. Create JMS Resource
The third step is to create a JMS resource such as connection factory, queue or topic in above created JMS Module.Click the JMS Module where a resource is created.
Then click on New button.
Select the resource type to be created. Here we create a Queue. Then click on Next button.
Type in the Queue nama and JNDI name for this Queue and then click on Next button.
Select the Subdeployment. If no existing Subdeployment can be used click on Create a New Subdeployment buttn.
Type in the name for a new Subdeployment and then click on OK button.
Then select the JMSServer and then click on Finish button.
liked it
ReplyDeleteOn your statement -"In clustered environment one Subdeployment targets multiple JMS server for each cluster node." - it's not possible to target one subdeployment on multiple JMS servers.
ReplyDeleteGreat Content. Thanks for sharing this valuable information. It will be useful for knowledge seekers.
ReplyDeleteJMeter Training in Chennai
JMeter Online Training
JMeter Training Institute in Chennai
JMeter Certification
Very interesting post all around. I was looking for this kind of information and enjoyed reading this one. Posting should go on. We owe you a debt of appreciation for sharing.
ReplyDeleteBest CA Foundation Coaching in Hyderabad
This comment has been removed by the author.
ReplyDelete