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 » Message Broker 8 Custom Nodes

Post new topic  Reply to topic Goto page 1, 2  Next
 Message Broker 8 Custom Nodes « View previous topic :: View next topic » 
Author Message
jacquesvdm
PostPosted: Wed Mar 14, 2012 10:26 pm    Post subject: Message Broker 8 Custom Nodes Reply with quote

Apprentice

Joined: 18 Jan 2012
Posts: 29

Hi
Do anybody know if it would now be possible in WMB8 to code custom nodes in DOTNET C# or C++. Previously only Java and C was supported.

I know you can now invoke DOTNET classes using the new DOTNET node but that is not what I am after.

thanks
Back to top
View user's profile Send private message
mgk
PostPosted: Thu Mar 15, 2012 1:36 am    Post subject: Reply with quote

Padawan

Joined: 31 Jul 2003
Posts: 1642

Quote:
I know you can now invoke DOTNET classes using the new DOTNET node but that is not what I am after


In V8 you can create nodes using the .NETCompute node, which can be "midflow" or "end of flow" nodes in any .NET CLR v4 language (C#, VB, F# etc). What exactly is it you are trying to do in a custom node?
_________________
MGK
The postings I make on this site are my own and don't necessarily represent IBM's positions, strategies or opinions.
Back to top
View user's profile Send private message
jacquesvdm
PostPosted: Thu Mar 15, 2012 5:03 am    Post subject: Reply with quote

Apprentice

Joined: 18 Jan 2012
Posts: 29

Hi
I have to use third party IP's soon which are written in C++ and just need to assess the options available. I wanted to develop plugin nodes for this purpose (e.g PABX communication node) which can be re-used by other developers. Some of the PABX api's are plain JAR files which are fine but the others are C++ APIs.

Currently it looks like I have to create a sub flow which can then use the DOTNET node. I would then have to distribute the sub flow to all projects that want to use the PABX communication service.
Back to top
View user's profile Send private message
lancelotlinc
PostPosted: Thu Mar 15, 2012 5:07 am    Post subject: Reply with quote

Jedi Knight

Joined: 22 Mar 2010
Posts: 4941
Location: Bloomington, IL USA

An alternate way to think of the design is to encapsulate the PABX functions into a Web Service, then use SOAPRequest node in your message flows to interact with the Web Service you created.

That way, no custom nodes are needed, and your performance is measurable.
_________________
http://leanpub.com/IIB_Tips_and_Tricks
Save $20: Coupon Code: MQSERIES_READER
Back to top
View user's profile Send private message Send e-mail
jacquesvdm
PostPosted: Thu Mar 15, 2012 5:09 am    Post subject: Reply with quote

Apprentice

Joined: 18 Jan 2012
Posts: 29

That is an excellent sugestion.

Thanks for that.
Back to top
View user's profile Send private message
mqjeff
PostPosted: Thu Mar 15, 2012 5:11 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

lancelotlinc wrote:
An alternate way to think of the design is to encapsulate the PABX functions into a Web Service, then use SOAPRequest node in your message flows to interact with the Web Service you created.

That way, no custom nodes are needed, and your performance is measurable.


And you've also introduced an additional layer and an additional component that needs to be managed, adminstered, and secured.

It is possible to compile and package subflows as user defined nodes.
Back to top
View user's profile Send private message
lancelotlinc
PostPosted: Thu Mar 15, 2012 5:14 am    Post subject: Reply with quote

Jedi Knight

Joined: 22 Mar 2010
Posts: 4941
Location: Bloomington, IL USA

There are always trade offs. Segregating the functionality in the way I described supports automated build and deploy through regressions tests, possibly using Junit.

If people think in the human-supervised automation vein, you get more bang for your buck rather than having the human do all the work. If the human does all the work, you are dependent on specific humans. If that person goes on vacation, sometimes things get bogged down.

If you use human-supervised automation to manage your IT systems, then the specific human is not relevant. Of course, some of the humans might feel that they are not needed as much.
_________________
http://leanpub.com/IIB_Tips_and_Tricks
Save $20: Coupon Code: MQSERIES_READER
Back to top
View user's profile Send private message Send e-mail
Vitor
PostPosted: Thu Mar 15, 2012 5:18 am    Post subject: Reply with quote

Grand High Poobah

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

lancelotlinc wrote:
There are always trade offs. Segregating the functionality in the way I described supports automated build and deploy through regressions tests, possibly using Junit.


And packaging subflows as user defined nodes doesn't?

Seriously, I'm asking. I don't know.

Or packaging them as seperately deployed subflows? Which may be the same thing (another thing I don't know)?
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
jacquesvdm
PostPosted: Thu Mar 15, 2012 5:25 am    Post subject: Reply with quote

Apprentice

Joined: 18 Jan 2012
Posts: 29

Hi MQJeff
That is also valid, thanks for all the valuable input.

Regards
Back to top
View user's profile Send private message
lancelotlinc
PostPosted: Thu Mar 15, 2012 5:48 am    Post subject: Reply with quote

Jedi Knight

Joined: 22 Mar 2010
Posts: 4941
Location: Bloomington, IL USA

Vitor wrote:
lancelotlinc wrote:
There are always trade offs. Segregating the functionality in the way I described supports automated build and deploy through regressions tests, possibly using Junit.


And packaging subflows as user defined nodes doesn't?

Seriously, I'm asking. I don't know.

Or packaging them as seperately deployed subflows? Which may be the same thing (another thing I don't know)?


IMHO PABX functionality is more useful outside of the Broker engine rather than in it.

http://en.wikipedia.org/wiki/Separation_of_concerns

Other people may have different opinions.

Quote:

Software build automation
Most project organization tasks are seen as secondary tasks. For example, build automation is an approach to automating the process of compiling source code into binary code. The primary goals in build automation are reducing the risk of human error and saving time.

Normalized Systems
In Normalized Systems separation of concerns is one of the four guiding principles. Adhering to this principle is one of the tools that helps reduce the combinatorial effects that, over time, get introduced in software that is being maintained. In Normalized Systems separation of concerns is actively supported by the tools.


By separating the PABX functions into a callable Web Service, you more support the loose-coupling, Service Oriented Architecture concepts.

http://en.wikipedia.org/wiki/Service-oriented_architecture

Quote:
Principles
The following guiding principles define the ground rules for development, maintenance, and usage of the SOA:

reuse, granularity, modularity, composability, componentization and interoperability.

standards-compliance (both common and industry-specific).

services identification and categorization, provisioning and delivery, and
monitoring and tracking.


I ask the question, what does PABX code have in common with WMB engine code? I answer myself, "Not much." Thus, why infuse PABX code into the WMB engine? I ask myself another question, Why not make full use of loose-coupling rather than the tight-coupling of user defined nodes? I answer myself and say, SOA Loose-Coupling is a wonderful concept that helps manage systems in an automated way.
_________________
http://leanpub.com/IIB_Tips_and_Tricks
Save $20: Coupon Code: MQSERIES_READER
Back to top
View user's profile Send private message Send e-mail
mqjeff
PostPosted: Thu Mar 15, 2012 7:00 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

lancelotlinc wrote:
SOA Loose-Coupling is a wonderful concept that helps manage systems in an automated way.

A WSDL defines an extremely *tight* coupling between two well described end-points.

If the Message Flow is already acting as a webservice endpoint that is designed and intended to provide an SOA contract wtih the rest of the enterprise, what value does it add to include an additional separation of concerns?

Why not write a third webservice to abstract the details of PABX from the details of the webservice that is abstracting the details of PABX from Broker?

It's turtles all the way down.
Back to top
View user's profile Send private message
mqsiuser
PostPosted: Thu Mar 15, 2012 8:42 am    Post subject: Reply with quote

Yatiri

Joined: 15 Apr 2008
Posts: 637
Location: Germany

lancelotlinc wrote:
SOA Loose-Coupling is a wonderful concept that helps manage systems in an automated way.

We have 2012 now and not 2002: It turned out that there is a lot of integration work left to be done (even when using WebServices) and that a lot of big companies just do not call web services here and there (but often replicate data between their different systems... to have instant access)... whats the benefit of calling a web-service (which might not be available) at the end of the other side of the world ?
_________________
Just use REFERENCEs


Last edited by mqsiuser on Thu Mar 15, 2012 8:55 am; edited 1 time in total
Back to top
View user's profile Send private message
lancelotlinc
PostPosted: Thu Mar 15, 2012 8:54 am    Post subject: Reply with quote

Jedi Knight

Joined: 22 Mar 2010
Posts: 4941
Location: Bloomington, IL USA

mqsiuser wrote:
lancelotlinc wrote:
SOA Loose-Coupling is a wonderful concept that helps manage systems in an automated way.

We have 2012 now and not 2002: It turned out that there is a lot of integration work left to be done (even when using WebServices) and that a lot of big companies just do not call web services here and there (but often replicate data between their different systems... to have instant access)... whats the benefit of calling a web-service (which is not available) at the end of the other side of the world ?


I am assuming the OP's PABX system is in the same area as the Broker runtime (ie. not on the other side of the world, although I could see a datacenter in Cebu in my future). I am suggesting a way to scope the project's artifacts that make it more maintainable and more SOA-compliant.

Your statement about replicating data is true for many organizations. They should not do that.

Also, I would expect more re-use out of the Web Service. For example, an application that uses the Web Service to query the status of various PABX states. I would expect the WMB interface to the PABX Web Service to set various things inside the PABX according to the transaction being processed by WMB. Some other application (a GUI perhaps) would want to inquire the status of those things, perhaps not using WMB.
_________________
http://leanpub.com/IIB_Tips_and_Tricks
Save $20: Coupon Code: MQSERIES_READER
Back to top
View user's profile Send private message Send e-mail
mqjeff
PostPosted: Thu Mar 15, 2012 8:59 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

lancelotlinc wrote:
perhaps not using WMB.

Again, that's likely exactly what is trying to be avoided here.

The advantage of an ESB is that you know that everyone is using the right interface in the right way and is following the contract defined for the service you have developed.
Back to top
View user's profile Send private message
lancelotlinc
PostPosted: Thu Mar 15, 2012 9:42 am    Post subject: Reply with quote

Jedi Knight

Joined: 22 Mar 2010
Posts: 4941
Location: Bloomington, IL USA

mqjeff wrote:
lancelotlinc wrote:
perhaps not using WMB.

Again, that's likely exactly what is trying to be avoided here.

The advantage of an ESB is that you know that everyone is using the right interface in the right way and is following the contract defined for the service you have developed.


In general, I promote the concept that the ESB be the central point of contact within an organization. There are circumstances where direct connections are useful. Not all Web Services traffic has to make the intermediate stop in the ESB. Now, if the ESB were located in the Pac-Rim....
_________________
http://leanpub.com/IIB_Tips_and_Tricks
Save $20: Coupon Code: MQSERIES_READER
Back to top
View user's profile Send private message Send e-mail
Display posts from previous:   
Post new topic  Reply to topic Goto page 1, 2  Next Page 1 of 2

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » Message Broker 8 Custom Nodes
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.