ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » General Discussion » Duplicate msgs from 1 qmgr to another qmgr in cluster

Post new topic  Reply to topic
 Duplicate msgs from 1 qmgr to another qmgr in cluster « View previous topic :: View next topic » 
Author Message
hkhan12
PostPosted: Thu Apr 10, 2008 6:20 am    Post subject: Duplicate msgs from 1 qmgr to another qmgr in cluster Reply with quote

Voyager

Joined: 08 Aug 2002
Posts: 98

Hello MQ Gurus,

We are running WMQ 5.3 CSD 13 on both Solaris and AIX in our production environments.

I have a scenario where I have to copy messages per say Q1 on QM1 (partial repository) to Q2 on QM2(partial repository) in a cluster environment.

Since messages are landing on Q1 queue on QM1, App2 is binding to Q1 to consume messages. Is it possible to run MMX to duplicate messages from Q1 and put it on Q3 before App2 consume messages from Q1?

Both QM1 and QM2 are running in two different machines in two different data centers.

App1 putting messages o
I can achieve this by running sender/receiver channels between these two machines but I don't like it since these both queue managers/machines running under one cluster.

I have been looking MIRRORQ and MMX. Both duplicate/copy messages locally within one queue manager.

Please let me know if there is any tool out there which can fulfil my task.

I hope I explain my requirements clear enough.

Thans a lot in advance for your input/feedback.

Regards,


Last edited by hkhan12 on Thu Apr 10, 2008 6:30 am; edited 1 time in total
Back to top
View user's profile Send private message
jefflowrey
PostPosted: Thu Apr 10, 2008 6:24 am    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

mirrorq will duplicate messages to a qremote...

You really should use pub/sub instead.
_________________
I am *not* the model of the modern major general.
Back to top
View user's profile Send private message
Vitor
PostPosted: Thu Apr 10, 2008 6:28 am    Post subject: Re: Duplicate msgs from 1 qmgr to another qmgr in cluster Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

hkhan12 wrote:
I have a scenario where I have to copy messages per say QM1 (partial repository) to QM2(partial repository) in a cluster environment.


I'm assuming from your description, and proposed solution, that you mean copy on an ongoing basis rather than as a one-off task.

hkhan12 wrote:
Both QM1 and QM2 are running in two different machines in two different data centers.


Is this some kind of bizzare HA solution?

hkhan12 wrote:
Please let me know if there is any tool out there which can fulfil my task.


Are the messages going to differently named queues, i.e. QM1.A to QM2.B, or the same one, i.e. QM1.A to QM2.A? If the former, what are the chances the putting application can be modified to write two copies of the message? Or a small app on QM1 that reads from QM1.A, writes a copy to QM2.B and QM1.A1? I accept this latter solution requires a minor change to the reading application or some dancing with alias queues, but easier & safer than exits.

Also remember that, if the queues are clustered and uniquely named, you don't need sender/receiver channels to link them.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
hkhan12
PostPosted: Fri Apr 11, 2008 5:10 am    Post subject: Reply with quote

Voyager

Joined: 08 Aug 2002
Posts: 98

Thank you guys for your quick response.

Jefflowrey - As you mentioned mirrorq does copy messages to remote q.

Would you please give me detail configuration. Based on mirrorq documentation, I have created a namelist and mentioned source & destination queues and Queue manager names but its not working.

Vitor - You are right it is kind of bizarre HA solution temporary though.
Messages can go to the same queue or a different queue name. I have no restrictions here. The idea here is to copy message from the queue at MQ configuration level (may be mirrorq) not the application level.

I ask anybody using mirrorq to copy messages to a remote queue to help me out here.

Thank you guys for all your help.

Regards,
Back to top
View user's profile Send private message
jefflowrey
PostPosted: Fri Apr 11, 2008 5:19 am    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

urgh. My brain is trying to tell me that there's a bug in the mirrorq code around qremotes. That it needs to be slightly tweaked or something, or just recompiled from the source....

But it's been several years since I actually remembered the details on this..

Mr. Google is your friend...
_________________
I am *not* the model of the modern major general.
Back to top
View user's profile Send private message
hkhan12
PostPosted: Fri Apr 11, 2008 5:47 am    Post subject: Reply with quote

Voyager

Joined: 08 Aug 2002
Posts: 98

Hi Jeff,

I'm not sure what code you are talking about? Are you talking about a C file which shows creation of input and out queues and a namelist.

All I did is created two input local queues in source and destination queue managers and defined a namelist on source queue manager.

I have also modified qm.ini file to add namelist name in Api exit stanza as follows:

ExitPath:
ExitsDefaultPath=/var/mqm/exits/
ExitsDefaultPath64=/var/mqm/exits64/
Data=mirrorq


Am I doing anythign wrong here?

Regards,
Back to top
View user's profile Send private message
hkhan12
PostPosted: Fri Apr 11, 2008 6:19 am    Post subject: Reply with quote

Voyager

Joined: 08 Aug 2002
Posts: 98

Hi Jefflowrey,

I realised that I still need to do the following:
1. compile the C program. What version of compiler I should have? and
how can I get it?
2. than put my mirrorq exit in the qm.ini file within ApiExit stanza.

Can you tell me what things need to change in the C program if my:
1. Source QMGR name is MQTEST
2. input queue name is Q1
3. Destination QMGR is QMIRROR
4. output queue name is Q2


Regards,
Back to top
View user's profile Send private message
hkhan12
PostPosted: Mon Apr 21, 2008 5:33 am    Post subject: Reply with quote

Voyager

Joined: 08 Aug 2002
Posts: 98

Hi Guys,

Now I have resolved duplicating messages on Sun OS under MQ clustering environment successfully.

I have used one namelist in which I mentioned my two source and two target Queues and one target qmgrName.

I have three machines in which 3 queue managers (partial repositories) are running. There are 30 queues in each queue manager need to duplicate messages in a different data center in two different machines under two different queue managers.

For Example:
QM1, QM2, QM3 are running in Data Center 1

messages in 30 queues from each queue manager above need to duplicate messages to QM4 & QM5 on Data Center 2

All QM1 thru QM5 are running in the same cluster.

So far I have created one namelist under QM1 and tested two queues to be duplicated messages into QM4.

My question is, if I have to increase number of source queues in the namelist, is there any limitation that I can not have more than certain number of source queues in one namelist?
OR
Can I have multiple namelists dividing number of source&target queues. If so, do I have to have a separate mirrorq ApiExit for each namelist or just one mirrorq exit is enough for multiple namelists?

Thank you so much in advance for all you input. I hope I explained my questions clear enough.

Regards,
Back to top
View user's profile Send private message
Vitor
PostPosted: Mon Apr 21, 2008 5:49 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

hkhan12 wrote:
is there any limitation that I can not have more than certain number of source queues in one namelist?


IIRC you can't have more than 256 somethings in a single namelist. It's either 256 entries or 256 characters. I could look it up in the manual, but can't be asked.


hkhan12 wrote:
Can I have multiple namelists dividing number of source&target queues. If so, do I have to have a separate mirrorq ApiExit for each namelist or just one mirrorq exit is enough for multiple namelists?


Agan IIRC a namelist can only substitute for a single MQ object, so you've need separate exits.

HA software must have a lower TCO than this.....
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
hkhan12
PostPosted: Mon Apr 21, 2008 11:23 pm    Post subject: Reply with quote

Voyager

Joined: 08 Aug 2002
Posts: 98

Hi Vitor,

Thanks a lot for your quick response. I will try to have more list in my one single namelist and see if it works. That will tell me if its 256 characters or 256 entries in one namelist. I hope it is 256 entries.

Can I load the same exit in my qm.ini with different namelist in the Data= field and with the different sequence number?

if this helps, I can take care of all my 30 queues.

OR if I can mention more namelists in just one Data= field something like this

Data=mirrorq1, mirrorq2, ....

even this can help me as well if it is acceptable.

Any way, I have to try a couple things here.

Regards,
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » General Discussion » Duplicate msgs from 1 qmgr to another qmgr in cluster
Jump to:  



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
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.