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 » WebSphere Message Broker (ACE) Support » IIB V10 Client MQInput

Post new topic  Reply to topic Goto page 1, 2, 3  Next
 IIB V10 Client MQInput « View previous topic :: View next topic » 
Author Message
murdeep
PostPosted: Mon Oct 05, 2015 9:26 am    Post subject: IIB V10 Client MQInput Reply with quote

Master

Joined: 03 Nov 2004
Posts: 211

In IIB V10 MQInput nodes can connect as MQ client and consume messages from queues. So pre V10 in a hub and spoke topology with IIB running at the hub and spokes clustered via MQ messages would be sent to cluster queues exposed by the IIB broker qmgr where a flow would consume them. In V10 I can now configure my flow's MQInput node to client connect directly to a local queue at the spoke qmgr and consume the messages. What would I use as a criteria to choose the pre V10 configuration versus the V10 client configuration? Is one any better than the other? If I wanted transactional support would we need to pay extra for the transaction client at the IIB hub?
Back to top
View user's profile Send private message
mqjeff
PostPosted: Mon Oct 05, 2015 9:34 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

The MQ Transactional client is no longer an extra charge.

You would choose between client to several qmgrs and client to a single qmgr based on the MQ topology.
_________________
chmod -R ugo-wx /
Back to top
View user's profile Send private message
murdeep
PostPosted: Mon Oct 05, 2015 12:42 pm    Post subject: Reply with quote

Master

Joined: 03 Nov 2004
Posts: 211

mqjeff wrote:
The MQ Transactional client is no longer an extra charge.

You would choose between client to several qmgrs and client to a single qmgr based on the MQ topology.


Ok so now in V10 say I have an IIB flow that is a simple MQInput->Compute->MQOutput. The MQInput client connects to qmgr A to get the message to process and needs to send it to a queue at qmgr B. I gather that the MQOutput node would also client connect to qmgr B. My concern is how is the UOW now managed? Thinking back to my days as a programmer the MQConn to qmgr A gives me a hconn and the MQConn to qmgr B gives me an hconn. How would the UOW be managed to ensure that a single commit point commits both the get and put?
Back to top
View user's profile Send private message
vennela
PostPosted: Mon Oct 05, 2015 8:45 pm    Post subject: Reply with quote

Jedi Knight

Joined: 11 Aug 2002
Posts: 4055
Location: Hyderabad, India

I think the criteria should be between synchronous vs asynchronous when you use MQCleint vs MQ Bindings mode
Back to top
View user's profile Send private message Send e-mail Visit poster's website
mqjeff
PostPosted: Tue Oct 06, 2015 5:15 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

vennela wrote:
I think the criteria should be between synchronous vs asynchronous when you use MQCleint vs MQ Bindings mode


Ok. But if I was an overall MQ admin, and someone started making MQ client connections to all of my "spoke" qmgrs, rather than to my Hub queue manager or the specific spoke assigned for their use... I think I would not be too happy.
_________________
chmod -R ugo-wx /
Back to top
View user's profile Send private message
timber
PostPosted: Tue Oct 06, 2015 5:50 am    Post subject: Reply with quote

Grand Master

Joined: 25 Aug 2015
Posts: 1280

Correct me if I'm wrong, but I think murdeep's question could be rephrased like this:
'In v10 ís there any reason to create a queue manager for IIB to use. Or is it always OK for the IIB instance to read and write directly from/to the gateway queue managers?'
Back to top
View user's profile Send private message
mqjeff
PostPosted: Tue Oct 06, 2015 6:00 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

Murdeep mentions both hub and spoke and clustering.

Which are kind of the opposite things, topology wise. But that's besides the point, I think.

Given an IIB v10 installation, and the need/requirement to process MQ messages, then the IIB v10 installation will need to connect to an MQ queue manager. This qmgr can either be local or remote.

The temptation, I think, using MQ Client connections from IIB is that one would use different qmgrs for different MQ nodes. This is what I was addressing about an MQ Admin's feelings.

If one ensures that IIB only talks to a single qmgr, then I agree with venella - one needs to evaluate the tradeoffs of client vs bindings.
_________________
chmod -R ugo-wx /
Back to top
View user's profile Send private message
Vitor
PostPosted: Tue Oct 06, 2015 8:12 am    Post subject: Reply with quote

Grand High Poobah

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

timber wrote:
Correct me if I'm wrong, but I think murdeep's question could be rephrased like this:
'In v10 ís there any reason to create a queue manager for IIB to use. Or is it always OK for the IIB instance to read and write directly from/to the gateway queue managers?'


I think the question, which covers the valid issue raised by my most worthy associate, is better phrased as:

"If I read from a hub with an MQInput using a client connection, and write a reply with an MQOutput to the same hub (potentially using a separate connection), is that in a single UoW?"

IMHO the answer is "yes", because the flow is a single thread and a single thread only ever has a single "HConn" to a single queue manager.

If you're bridging from spoke queue manager A to spoke queue manager B in a single flow in a single UoW, I'm with my most worthy associate.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
murdeep
PostPosted: Tue Oct 06, 2015 2:12 pm    Post subject: Reply with quote

Master

Joined: 03 Nov 2004
Posts: 211

mqjeff wrote:
Murdeep mentions both hub and spoke and clustering.

Which are kind of the opposite things, topology wise. But that's besides the point, I think.

Given an IIB v10 installation, and the need/requirement to process MQ messages, then the IIB v10 installation will need to connect to an MQ queue manager. This qmgr can either be local or remote.

The temptation, I think, using MQ Client connections from IIB is that one would use different qmgrs for different MQ nodes. This is what I was addressing about an MQ Admin's feelings.

If one ensures that IIB only talks to a single qmgr, then I agree with venella - one needs to evaluate the tradeoffs of client vs bindings.
We have a hub and spoke topology implemented with MQ clustering. We ensure that the spokes can only communicate with the hub where our full repositories reside along with our IIB Integration nodes. Spokes do not communicate directly since we want everything flowing through IIB for event management, logging etc. So I wouldn't say MQ clustering and hub and spoke are necessarily opposites in this design but rather complimentary.

Now with V10 IIB we can now client connect so in my environment it is possible to route from spoke or qmgr A to say spoke or qmgr B by doing a MQInput(Client to A)->Compute->MQOutput(Client to B) no messages need to flow to my hub qmgr in order to go from qmgr A to qmgr B. From an MQ admin view it's simpler since I don't have to concern myself with full repositories, partial repositories, clusters, namelists, clussdr/clusrcvr channels etc.

Now note I am not saying it is a better solution than server to server but nonetheless it is now an option. Now if it is an option I must weigh the pros and cons and the first con I see is UOW. A MQ server can be a resource co-ordinator but if it is I do not believe another MQ server may be a participant. So I am wondering how the IIB and WMQ architects will view the MQInput(Client to A)->Compute->MQOutput(Client to B) paradigm. I see this as having hole where you can have duplicate messages if the MQOutput commits but then you fail before the MQInput commits. I am curious if other SMEs on the board have considered this now with V10 being available.
Back to top
View user's profile Send private message
smdavies99
PostPosted: Tue Oct 06, 2015 10:37 pm    Post subject: Reply with quote

Jedi Council

Joined: 10 Feb 2003
Posts: 6076
Location: Somewhere over the Rainbow this side of Never-never land.

The Remote QM 1--> IIB --> Remote QM 2 scenario is certainly possible.
However a good number of sites use MQ for other things. Things such as Monitoring Events, HTTPNodes and other nodes (at the moment) that use MQ under the hood, and for us, Logging.

We send Log/Audit/Error messages using MQ. so for us Not having an associated QMGR with an IIB Instance is just not a choice.
Sure we could modify it to use a remote connection to an specific QMGR but honestly, it is far too much Faff to be bothered with. IMHO, it is far better to just drop a committed message onot a local queue from the message flow and let MQ handle it from there on. Classic 'Fire and forget' IMHO.

Just my 2p worth so it can be ignored.
_________________
WMQ User since 1999
MQSI/WBI/WMB/'Thingy' User since 2002
Linux user since 1995

Every time you reinvent the wheel the more square it gets (anon). If in doubt think and investigate before you ask silly questions.
Back to top
View user's profile Send private message
Vitor
PostPosted: Wed Oct 07, 2015 4:32 am    Post subject: Reply with quote

Grand High Poobah

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

murdeep wrote:
From an MQ admin view it's simpler since I don't have to concern myself with full repositories, partial repositories, clusters, namelists, clussdr/clusrcvr channels etc.


From this MQ Admin's point of view it's a nightmare. What you're describing is a series of unconnected queue managers with the only links being the IIB flows. You've clearly elected not to do that with your existing topology (because IIBv10 now acts like your existing client apps) for good and sufficient reason, and that still holds.

As an admin, I don't want a web of SVRCONN channels. I want some control over message flow, message priority, the ability to use pub/sub and the decoupled joy that only an XMITQ can bring. I don't want every single application (especially every single application all running under mqbrkrs) authorized to every single queue manager. I want my controlled topology, where it's easy to see when some application is being a jackass, where sanction is available and multiple routes can be defined for those 25Mb Java-Classes-Serialized-As-XML messages can lumber between queue managers and not spook the herd of tiny SOAP-over-JMS messages trying to meet their sub second SLA.

Other opinions are equally valid, may be more valid and are almost certainly less crazy in a variety of cases.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
zpat
PostPosted: Wed Oct 07, 2015 4:57 am    Post subject: Reply with quote

Jedi Council

Joined: 19 May 2001
Posts: 5849
Location: UK

I can see the IIB v10 MQ client connection being a bit of a nightmare to control.

With v9 - I know which QM the flow connects to. Simple.

With V10 - it could be trying to connect anywhere - how do I even know what they have coded?

Also IBM are using MQ policies and not configurable services which is confusing.

The risk of environment pollution (Prod accessing non-prod queues because the promotion has not correctly updated the connection details) will be high.
_________________
Well, I don't think there is any question about it. It can only be attributable to human error. This sort of thing has cropped up before, and it has always been due to human error.
Back to top
View user's profile Send private message
Vitor
PostPosted: Wed Oct 07, 2015 5:55 am    Post subject: Reply with quote

Grand High Poobah

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

zpat wrote:
With V10 - it could be trying to connect anywhere - how do I even know what they have coded?


Insist on the use of an MQ Service, and enforce it like any other coding standard.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
zpat
PostPosted: Wed Oct 07, 2015 6:24 am    Post subject: Reply with quote

Jedi Council

Joined: 19 May 2001
Posts: 5849
Location: UK

Which planet are you on?

We need runtime enforcement capability - aside from the impossibility of enforcing development standards on people 5000 miles away, there is also the issue of accidental deployment of the wrong MQ configuration in a bar file.
_________________
Well, I don't think there is any question about it. It can only be attributable to human error. This sort of thing has cropped up before, and it has always been due to human error.
Back to top
View user's profile Send private message
Vitor
PostPosted: Wed Oct 07, 2015 6:31 am    Post subject: Reply with quote

Grand High Poobah

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

zpat wrote:
Which planet are you on?


I've been asked that a few times. The sky is an interesting shade of purple, but I'm not sure if it's that color or just looks like it to me.

zpat wrote:
We need runtime enforcement capability - aside from the impossibility of enforcing development standards on people 5000 miles away, there is also the issue of accidental deployment of the wrong MQ configuration in a bar file.


I can enforce development standards from any distance but I was referring not to a local configuration but a service stored in the broker thus. If the service is stored and published, you maintain administrative control.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Goto page 1, 2, 3  Next Page 1 of 3

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » IIB V10 Client MQInput
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.