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 » WMB 7 SOAP Nodes port

Post new topic  Reply to topic
 WMB 7 SOAP Nodes port « View previous topic :: View next topic » 
Author Message
hopsala
PostPosted: Wed Jun 01, 2011 3:56 am    Post subject: WMB 7 SOAP Nodes port Reply with quote

Guardian

Joined: 24 Sep 2004
Posts: 960

By now I've read heaps of material on the whole 'find the port' issue in V7, concerning http nodes, soap nodes, biphttplistener etc, and I just want to ask one simple question:

Is it possible to configure all SOAP nodes to listen on one port, maybe the biphttplistener port, despite being in seperate EGs?

I'm 99% sure the answer is no, but there are a few reason I wanted to make sure:
1. It's possible to have http nodes listen on the EG listener, so I thought maybe the reverse might be possible.
2. The fact that each EG has a seperate port creates a much more complex and messy network, especially on the specific site I'm on now. Having one port for all webservice flows will simplify my setup immensely, sparing me from adding and managing an additional component (Apache or Tomcat with proxy servlet), whose main operation is url-to-port mapping, so clients are not exposed to port changes.

I'm also wondering if IBM might consider adding this feaure in the near future. Probably not, given the way the broker manages SOAP nodes threads, but I hope I'm wrong..
Back to top
View user's profile Send private message
mqjeff
PostPosted: Wed Jun 01, 2011 4:29 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

The reason that Broker in earlier versions was able to accept all HTTP requests for a given broker on a single port was because the HTTP handling was offloaded to the bipHTTPListener process.

A single network address and port can not be READ from by more than one process.

Because there is no such thing as a "broker" process, merely a set of DataFlowEngine processes, the EGs can't all listen to the same port for incoming SOAP requests.

So, the answer to your question is indeed 'No'. The bipHTTPListener is not capable of providing the necessary infrastructure to meet the needs of the SOAP standards.

There is a conflicting set of requirements in this area.... lots of people "want" to have a single port for all the HTTP requests to a given Broker, but they also balk at the notion of maintaining something like the bipHTTPlistener - a separate, standalone process that is not as directly manageable as a given EG.

You might, however, consider the support available in v7.0.0.2 (maybe 7.0.0.1, I've forgotten) to create a SOAPInput node that acts as a WS passthrough.

You could then construct a flow that acted as a proxy for all your real flows - and deploy this to a single EG. And construct a similar flow for your HTTP requests.

Then you have a single EG that acts as the official 'endpoint' of all your requesters, and this is on a single fixed port, and you then route data internally to the rest of the EGs on their ports.

But this is likely at least as much work as configuring the HTTP Proxy Servlet - except it doesn't require additional web containers.
Back to top
View user's profile Send private message
hopsala
PostPosted: Sun Jun 05, 2011 2:47 am    Post subject: Reply with quote

Guardian

Joined: 24 Sep 2004
Posts: 960

mqjeff wrote:
There is a conflicting set of requirements in this area.... lots of people "want" to have a single port for all the HTTP requests to a given Broker, but they also balk at the notion of maintaining something like the bipHTTPlistener - a separate, standalone process that is not as directly manageable as a given EG.

Well, to me it seems rather obvious that some sort of distributer is necessary; and it shouldn't be that difficult to add some sort of basic management to this process, say httpsoaplistener, through the toolkit or otherwise..

mqjeff wrote:
You might, however, consider the support available in v7.0.0.2 (maybe 7.0.0.1, I've forgotten) to create a SOAPInput node that acts as a WS passthrough.

You could then construct a flow that acted as a proxy for all your real flows - and deploy this to a single EG. And construct a similar flow for your HTTP requests.

Then you have a single EG that acts as the official 'endpoint' of all your requesters, and this is on a single fixed port, and you then route data internally to the rest of the EGs on their ports.

But this is likely at least as much work as configuring the HTTP Proxy Servlet - except it doesn't require additional web containers.

By WS passthrough you mean it's possible not to supply a wsdl?

That sort of solution has come in discussions here, but I'm trying to have the least amount of coding involved. And like you say, it sounds like as much work as the proxy servlet, or much more. Finally, this sort of design will block me from monitoring the individual flows, unless I monitor them directly, thereby missing the whole point.
Back to top
View user's profile Send private message
mqjeff
PostPosted: Sun Jun 05, 2011 7:25 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

Yes, there is a way to configure a SOAPInput node to accept all SOAP traffic, and not validate against a specific given WSDL.

Yes, it means that if you monitored this flow, you wouldn't necessarily know which "real" SOAP flow was going to be called later - although I strongly suspect that the actual URL information will still be visible from a monitoring point of view.

The problem with creating an additional standalone process - bipsoaplistener or whatever - is that you are then really re-inventing the wheel, and most customers if you are going to make use of an external http container separate from the message flows really do end up wanting to have some choice and control over what that container is. And, again, there certainly are customers who just want to integrate Broker's http functions into their standalone WAS/IHS configurations.

But unfortunately, you really need to be having this conversation with the development team directly, through a Requirement.
Back to top
View user's profile Send private message
hopsala
PostPosted: Wed Jun 08, 2011 7:44 am    Post subject: Reply with quote

Guardian

Joined: 24 Sep 2004
Posts: 960

mqjeff wrote:
Yes, it means that if you monitored this flow, you wouldn't necessarily know which "real" SOAP flow was going to be called later - although I strongly suspect that the actual URL information will still be visible from a monitoring point of view.

Visible, yes, most probably, but not a reliable source for knowing whether the "real" processing flow is up or down. And since HEAD requests do not activate the gateway flow - which is the whole point - there's no way to program it either.

mqjeff wrote:
But unfortunately, you really need to be having this conversation with the development team directly, through a Requirement.

And so I shall. I'd like to see a soaphttplistener as an option, at least.

Much obliged, as always
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 » WebSphere Message Broker (ACE) Support » WMB 7 SOAP Nodes port
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.