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 IBM MQ Support » Starting Multiple Channels with one Trigger

Post new topic  Reply to topic Goto page 1, 2  Next
 Starting Multiple Channels with one Trigger « View previous topic :: View next topic » 
Author Message
sproot
PostPosted: Mon Dec 09, 2013 2:39 am    Post subject: Starting Multiple Channels with one Trigger Reply with quote

Newbie

Joined: 21 Jun 2005
Posts: 4

I might be misunderstanding the documentation here, but what I've read seems to imply that it's possible to start multiple channels with a single trigger. I would like to start both the associated sender channel and also a requester channel when a message arrives on my xmitq.

I have it starting the sender correctly, but I can't see how to configure it to also start the requester.

Is this possible?
Back to top
View user's profile Send private message
PaulClarke
PostPosted: Mon Dec 09, 2013 4:03 am    Post subject: Reply with quote

Grand Master

Joined: 17 Nov 2005
Posts: 1002
Location: New Zealand

No, you can't start multiple channels with a single trigger message.

It would seem a slightly odd thing to do to me. Triggering is something you do to when you know you have a message to process.
I assume that in your case you are trying to trigger the return path for the reply messages ? Is this correct ? Is there are reason why you would not just have the Server channel trigger to connect to you ? Or is the problem that you have a floating IP address ?

Cheers,
Paul.
_________________
Paul Clarke
MQGem Software
www.mqgem.com
Back to top
View user's profile Send private message Visit poster's website
exerk
PostPosted: Mon Dec 09, 2013 4:08 am    Post subject: Reply with quote

Jedi Council

Joined: 02 Nov 2006
Posts: 6339

SDR channels open transmission queues INPUT EXCLUSIVE...
_________________
It's puzzling, I don't think I've ever seen anything quite like this before...and it's hard to soar like an eagle when you're surrounded by turkeys.
Back to top
View user's profile Send private message
bruce2359
PostPosted: Mon Dec 09, 2013 4:23 am    Post subject: Reply with quote

Poobah

Joined: 05 Jan 2008
Posts: 9396
Location: US: west coast, almost. Otherwise, enroute.

Requester channels are usually paired with server (unattended) sender channels. When the requester app is ready to accept messages from the serving app, the requesting app (or timer-driven event) starts the requester- end of the channel. In response, the server-end channel starts, and sends messages.
_________________
I like deadlines. I like to wave as they pass by.
ב''ה
Lex Orandi, Lex Credendi, Lex Vivendi. As we Worship, So we Believe, So we Live.
Back to top
View user's profile Send private message
sproot
PostPosted: Mon Dec 09, 2013 7:23 am    Post subject: Reply with quote

Newbie

Joined: 21 Jun 2005
Posts: 4

I am opening the return path, the network configuration prevents the remote end doing so.
It's not usually an issue, it starts once automatically and runs all week, but occasionally the remote end isn't yet available and we have to manually start it later, assuming we notice.

I'd hoped that using the channel initiator would be an easy win, but it looks like I'll be adding some more monitoring instead.


Thanks for confirming
Back to top
View user's profile Send private message
PaulClarke
PostPosted: Mon Dec 09, 2013 7:50 am    Post subject: Reply with quote

Grand Master

Joined: 17 Nov 2005
Posts: 1002
Location: New Zealand

Well, I'm sorry but I can't think of any way to configure MQ to start two (or more) channels by a single trigger message. I think most people generally start REQUESTER channels based on a script based either on time or availability.

So, suppose your sender channel is A and your requester channel is B then I think your options are :

1. Monitoring Channel Events
You could configure some tool, like MO71 for example, to issue the start channel command for B on the arrival of the 'Channel Start' event for the channel A.

2.Monitoring the channel status
You could constantly monitor your channels and start channel B if channel A is running and B is not. This has the downside that it is polling and could burn a lot of unnecessary CPU.

3.Channel Exit
You could write a channel exit which runs inside channel A and will issue the start channel command for B when it is invoked. This might not be too hard to do and would be pretty efficient but it is pretty specialised code.

4.Channel Initiator
You could write your own channel initiator and have a different initiation queue for channel A. Upon receiving the trigger message you would start both channels. This is probably the most complicated and you would probably end up having to do some polling as well to cope with retry etc.

Anyway, those are my thoughts, I wonder how many other customers have a similar problem, it's not something I remember being raised before.

Cheers,
Paul.
_________________
Paul Clarke
MQGem Software
www.mqgem.com
Back to top
View user's profile Send private message Visit poster's website
Mr Butcher
PostPosted: Tue Dec 10, 2013 6:02 am    Post subject: Reply with quote

Padawan

Joined: 23 May 2005
Posts: 1716

5. create your own initiation queue and use the supplied trigger monitor to trigger a script that starts both channels
_________________
Regards, Butcher
Back to top
View user's profile Send private message
PaulClarke
PostPosted: Tue Dec 10, 2013 7:40 am    Post subject: Reply with quote

Grand Master

Joined: 17 Nov 2005
Posts: 1002
Location: New Zealand

I did consider using the standard trigger monitor as an option at one point but discarded it because I couldn't see how you would cope with things like Channel retry etc. ie. Just because you can issue start channel doesn't mean it's going to work so what happens then ?

Cheers,
Paul.
_________________
Paul Clarke
MQGem Software
www.mqgem.com
Back to top
View user's profile Send private message Visit poster's website
fjb_saper
PostPosted: Tue Dec 10, 2013 8:49 pm    Post subject: Reply with quote

Grand High Poobah

Joined: 18 Nov 2003
Posts: 20696
Location: LI,NY

Seems to me a lot of work for a tcp/ip / routing problem that will need to get fixed anyway.

AFAIK when you start a sender channel the corresponding requester channel starts just like a receiver channel would.

Just like when you start the requester channel the corresponding server channel starts... Now if you have some problems because of firewall and security considerations, you need to get your channels encrypted with SLL Peer on them and the corresponding rules set in place to allow access.

Have fun
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
Mr Butcher
PostPosted: Tue Dec 10, 2013 11:43 pm    Post subject: Reply with quote

Padawan

Joined: 23 May 2005
Posts: 1716

@Paul - IMHO when using solution 5 the same thing happens as with "normal" channel triggering. in both cases a start command is issued, and in both cases you can not be sure that the channel starts. as trigger conditions are the same, no matter if you use the channel initq or your own, also re-triggering should be the same.

i do not see a difference here.....

@fjb_saber ... imho the OP talks about sender and requester being on the same queuemanager, and not the requester that is related to the sender on the other end of the channel
_________________
Regards, Butcher
Back to top
View user's profile Send private message
PaulClarke
PostPosted: Tue Dec 10, 2013 11:52 pm    Post subject: Reply with quote

Grand Master

Joined: 17 Nov 2005
Posts: 1002
Location: New Zealand

@MrButcher

I'm not quite sure how you could say the triggering conditions are the same, in one case you would use RUNMQCHI as your trigger monitor and in the other case you would use RUNMQTRM. Well, the reason why there is a RUNMQCHI program is that RUNMQTRM is far too simplistic. It 'assumed' that when it starts a program is runs. However, RUNMQCHI copes with a bunch of other conditions, most notably RETRYing the channel if the initial start fails. RUNMQCHI does this by looking at the channel status' so, there's a fair chance it will do it for the sender channel even if it were triggered by some other program. However, I don't think it would do it for a requester channel.

Of course it would be fairly easy to try it and see what happens.

Cheers,
Paul.
_________________
Paul Clarke
MQGem Software
www.mqgem.com
Back to top
View user's profile Send private message Visit poster's website
Mr Butcher
PostPosted: Wed Dec 11, 2013 2:27 am    Post subject: Reply with quote

Padawan

Joined: 23 May 2005
Posts: 1716

well, this starts to be a bit off topic. however ... i was not talking about sender or requester, i was talking about the difference using the supplied channel triggering vs. using the supplied trigger monitor to issue a start channel command, which - imho - will provide the same results, no matter if the channel starts fine or not.

using the supplied trigger monitor and a script could be used to issue start for multiple channels, and this should work no matter of the channel type. and this is what the OP is looking for......
_________________
Regards, Butcher
Back to top
View user's profile Send private message
PaulClarke
PostPosted: Wed Dec 11, 2013 2:39 am    Post subject: Reply with quote

Grand Master

Joined: 17 Nov 2005
Posts: 1002
Location: New Zealand

Well, for anyone listening in there is a big difference between RUNMQCHI and RUNMQTRM, take my word for it. I should know after all since I wrote RUNMQCHI and the channels it starts!

Cheers,
Paul.
_________________
Paul Clarke
MQGem Software
www.mqgem.com
Back to top
View user's profile Send private message Visit poster's website
bruce2359
PostPosted: Wed Dec 11, 2013 4:08 am    Post subject: Reply with quote

Poobah

Joined: 05 Jan 2008
Posts: 9396
Location: US: west coast, almost. Otherwise, enroute.

There is a substantial difference difference between starting a channel, and merely issuing the 'start channel' command (or any other command).
_________________
I like deadlines. I like to wave as they pass by.
ב''ה
Lex Orandi, Lex Credendi, Lex Vivendi. As we Worship, So we Believe, So we Live.
Back to top
View user's profile Send private message
PeterPotkay
PostPosted: Wed Dec 11, 2013 4:22 am    Post subject: Reply with quote

Poobah

Joined: 15 May 2001
Posts: 7717

sproot, please clarify where these channels are.

The SNDR channel is on which Queue Manager?
The RQSTR channel is on which Queue Manager?
Which channels on which QM(s) do you want to trigger and under what conditions?
_________________
Peter Potkay
Keep Calm and MQ On
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Goto page 1, 2  Next Page 1 of 2

MQSeries.net Forum Index » General IBM MQ Support » Starting Multiple Channels with one Trigger
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.