|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
Publish#Subcribe with Websphere MQ V6 |
« View previous topic :: View next topic » |
Author |
Message
|
Toum |
Posted: Sat Nov 05, 2005 2:14 pm Post subject: Publish#Subcribe with Websphere MQ V6 |
|
|
Novice
Joined: 14 Oct 2005 Posts: 15
|
Is it possible to do Publish/Subcribe with Websphere MQ V6 without any other (broker, integration, event layer, support pac) additionnal installation ? |
|
Back to top |
|
 |
jefflowrey |
Posted: Sat Nov 05, 2005 2:15 pm Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
Yes.
The basic broker is part of the base install, since CSD8 of V5.3.
You will have to do some minor additional configuration, such as starting the broker, though. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
ivanachukapawn |
Posted: Thu Dec 08, 2005 5:23 am Post subject: Pub/Sub with Base Java API and MQSeries 6.0.1.0 |
|
|
 Knight
Joined: 27 Oct 2003 Posts: 561
|
Jeff,
I'd like to extend this question a bit. I too want to pub/sub using MQ6.0.1.0 but I'd like to do it with Base MQ Java API (NOT JMS). Has the MQ Java API model been extended to incorporate TOPIC, PUBLISHER, SUBSCRIBER objects, etc.??
Looking around the internet, IBM, and searching this site, I have not yet been able to get an answer to this question.
John Davis |
|
Back to top |
|
 |
fjb_saper |
Posted: Thu Dec 08, 2005 5:38 am Post subject: Re: Pub/Sub with Base Java API and MQSeries 6.0.1.0 |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
ivanachukapawn wrote: |
Jeff,
I'd like to extend this question a bit. I too want to pub/sub using MQ6.0.1.0 but I'd like to do it with Base MQ Java API (NOT JMS). Has the MQ Java API model been extended to incorporate TOPIC, PUBLISHER, SUBSCRIBER objects, etc.??
Looking around the internet, IBM, and searching this site, I have not yet been able to get an answer to this question.
John Davis |
Dear John,
Why, but why is it that whenever a pub sub java question comes up somebody thinks he/she absolutely has to reinvent the wheel and do it in base java? JMS was created for a reason and is optimized to allow you to do a number of things that are provider neutral. Pub/Sub is one of them.
In MQ pub/sub is done via the RFH header. So you really should use JMS as it is optimized for the creation and handling of said header. I would not want to go to all the pain of writing code to handle it myself.
Know as well that you can use JMS in a stand alone java program without app server.
So please switch to JMS already and read the manuals.
Thanks
 |
|
Back to top |
|
 |
ivanachukapawn |
Posted: Thu Dec 08, 2005 5:53 am Post subject: JMS for a reason |
|
|
 Knight
Joined: 27 Oct 2003 Posts: 561
|
Quote: |
JMS was created for a reason and is optimized to allow you to do a number of things that are provider neutral. Pub/Sub is one of them.
|
Your right, JMS was created for this reason, but their are several features of MQSeries that are not reachable via JMS (Distribution List, etc). Our project architect has made the decision to sidestep JMS for this project because of the features we would be missing by using it.
Apparently Pub/Sub is provider neutral and IBM has seen fit to enable Pub/Sub for JMS. Thats great, but in this case, I can't use it.
It ought not to be the case that an MQSeries feature is implemented only in JMS and not the Base.
I have read the manuals and have implemented enough JMS MDB, EJB, Servlet, JSP, and stand-alone apps to choke a horse and I don't appreciate your insinuation of ignorance.
Where is IBM's support for Pub/Sub in the Base Java API? Does it exist? If not, this is an MQSeries design flaw. JMS should be optional, not required in order to access an MQSeries feature. |
|
Back to top |
|
 |
jefflowrey |
Posted: Thu Dec 08, 2005 5:55 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
There aren't any classes for handling the MQRFH2 in an object oriented manner in the MQ Base API.
There aren't any classes for doing Pub/Sub in an object oriented manner in the MQ Base API. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
Toum |
Posted: Thu Dec 08, 2005 6:33 am Post subject: |
|
|
Novice
Joined: 14 Oct 2005 Posts: 15
|
Hi Everybody,
I started this post 2 months ago because I was very beginner in WMQ and I wanted to integrate legacy VB6 (applications) with WMQ. Now, I understand a lot of things in WMQ and its APIs. I did a successfull proof of concept of WMQ and I'm integrating it to true applications.
Some key points that I would like to share with all people which could be in the situation I was some weeks ago.
1- You can do WMQ pub/sub you must have runnig one of the three following brokers : WMQ basic broker, WMQ Message Broker, WMQ Event Broker.
2- I learnt and I'm running MQ pub/sub with WMQ Basic broker. The basic broker is builtin in the WMQ V6 installation package.
3- The WMQ basic broker is a normal application reading publish and subscribe command messages and writing publish/subscribe matches on reply queues.
4-With WMQ basic broker, doing pub/sub is more a message formatting matter (MQRFH, MQRFH2) than API functionnality. But, MQRFH2 does not seem to work with the basic MQ Broker.
5-According to points 1-4, you could have a JAVA API and do pub/sub with WMQ basic broker in JAVA without using famous JMS API. That is ; your JAVA API just needs to have the basic functionnality for writing and reading on queues ; but (very important), you have to do a correct formating of your pub/sub messages in MQRFH. I took this way and successfully did all my code integration in VB6.
6-Many people suggested me to use XMS (kindof JMS but for C++, .NET languages) ; they generally argued that MQRFH formatting details are encapsulated in this API. But, I wanted to overcome a more exciting challenge ; that is, having WMQ run with a dying language (VB6).
Conclusion :
With MQ and one of its brokers, you can do pub/sub with any API dealing correctly with putting and getting messages in MQ queues ; without the application having any knowledge of what is a topic, a factory, a pub, sub, etc.
Regards,
Toum |
|
Back to top |
|
 |
fjb_saper |
Posted: Thu Dec 08, 2005 9:27 pm Post subject: Re: JMS for a reason |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
ivanachukapawn wrote: |
Quote: |
JMS was created for a reason and is optimized to allow you to do a number of things that are provider neutral. Pub/Sub is one of them.
|
Your right, JMS was created for this reason, but their are several features of MQSeries that are not reachable via JMS (Distribution List, etc). Our project architect has made the decision to sidestep JMS for this project because of the features we would be missing by using it.
Apparently Pub/Sub is provider neutral and IBM has seen fit to enable Pub/Sub for JMS. Thats great, but in this case, I can't use it.
It ought not to be the case that an MQSeries feature is implemented only in JMS and not the Base.
I have read the manuals and have implemented enough JMS MDB, EJB, Servlet, JSP, and stand-alone apps to choke a horse and I don't appreciate your insinuation of ignorance.
Where is IBM's support for Pub/Sub in the Base Java API? Does it exist? If not, this is an MQSeries design flaw. JMS should be optional, not required in order to access an MQSeries feature. |
Sorry I did not mean to imply that you were ignorant in any way.
Now this has me highly confused. You either use a distribution list or you do pub /sub. Why would you want to mix the 2 ?
Yes with DL you can optimize the traffic on the network in a way you could not with pub / sub...
But then you could use a 2 step process. 1st Step Pub, 2nd step read the message by subscription and forward further by DL?
Usually what you get is 2 brokers. Pub in one location with a durable subscription from the other that goes onto the pub of the second broker. Same effect as a DL...
So what is the real reason behind the architecture constraint ?
Enjoy  |
|
Back to top |
|
 |
ivanachukapawn |
Posted: Fri Dec 09, 2005 5:20 am Post subject: restraint using JMS |
|
|
 Knight
Joined: 27 Oct 2003 Posts: 561
|
Although I am not (for a change) the Architect for this system, he who is has decided to eschew the use of JMS. This development effort is a conglomeration of applications, one of which is a router to be used for routing mainstream business events. This router has been designed/prototyped using Distribution Lists. Other side applications wish to publish reports/addenda etc. and to have subscribing applications control flexibility to receive or not this information etc. For these applications, the architect is considering pub/sub (probably too cheap to use WMQI or BIMBI and the time frame for in-housing these alternative products is prohibitive).
I don't remember what other (besides Distribution List) features are available in Base MQ Java and not MQ JMS but there are some which convinced the architect to not use JMS.
My viewpoint is this. JMS should and can be an option selected by an architect who foresees portability and flexibility with respect to messaging provider to be a premium application feature. Such an architect should be careful to avoid any MQSeries feature not exposed via JMS. But all MQSeries features (generic, JMS, MQSeries-only) should be available via Base MQ API.
For example: feature A = Queue A Message
Feature A is exposed by JMS but is also availabe via Base MQ API. Architects which view messaging vendor flexibility as a premium feature would implement feature A via JMS. Architects which don't require messaging vendor flexibility as premium and want to use other special features of MQSeries would implement feature A via the Base MQ API. It ought not to be the case that the MQSeries design forces the architect to use JMS in order to queue a message. But for feature A if we substitute pub/sub for queue a message, then we have an architectural quandry - we want to use JMS pub/sub but can't because we've rationally selected MQ Base API. |
|
Back to top |
|
 |
jefflowrey |
Posted: Fri Dec 09, 2005 5:32 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
You can use Pub/Sub with the base Java API for WebSphere MQ.
There just aren't any prebuilt helper classes to do so.
It seems like a good thing to write a support pack for, like the support pack for adding PCF support... _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
fjb_saper |
Posted: Fri Dec 09, 2005 4:26 pm Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
@ ivanachukapawn
Sounds to me like you're in an aggressive time frame and have really not the time to develop the required helper classes. Tell your architect that he will have to bite the bullet on this one.
Enjoy  |
|
Back to top |
|
 |
|
|
 |
|
Page 1 of 1 |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|
|
|