Author |
Message
|
arunkumar1989 |
Posted: Mon Jun 17, 2013 1:04 am Post subject: ESQL vs Java |
|
|
 Voyager
Joined: 21 Nov 2012 Posts: 98 Location: Chennai
|
Hi All,
Why we need java compute node, even we have compute node(ESQL) to do all business logic. _________________ Being in a crowd when you are alone is ignorance. Enlightenment is being alone in a crowd; a feeling of oneness in a crowd. |
|
Back to top |
|
 |
zpat |
Posted: Mon Jun 17, 2013 1:08 am Post subject: |
|
|
 Jedi Council
Joined: 19 May 2001 Posts: 5866 Location: UK
|
You don't need it.
If you want my advice, stick to ESQL as it can avoid the temptation to use non-WMB Java classes (when the same function comes with WMB). |
|
Back to top |
|
 |
arunkumar1989 |
Posted: Mon Jun 17, 2013 1:12 am Post subject: |
|
|
 Voyager
Joined: 21 Nov 2012 Posts: 98 Location: Chennai
|
Hi zpat,
Performance wise ESQL would be better than java, because ESQL provided by IBM Websphere Message Broker.
Even though we have option to access java methods from esql.
so some points we are depending on java, then why we need esql.
is ther any other reason to go for esql? _________________ Being in a crowd when you are alone is ignorance. Enlightenment is being alone in a crowd; a feeling of oneness in a crowd. |
|
Back to top |
|
 |
zpat |
Posted: Mon Jun 17, 2013 1:39 am Post subject: |
|
|
 Jedi Council
Joined: 19 May 2001 Posts: 5866 Location: UK
|
There is no need to use Java at all.
The reason for buying WMB is that WMB does it all for you - you do NOT need Java methods.
(Other than in exceptional and rare cases).
People who think they need to use Java methods nearly always do not understand what WMB can do and how to use it properly.
Do not use Java methods, repeat - do not use Java methods. Use the function that comes with WMB which can do what you need (in 99.999% of cases) IF you understand WMB properly.
So you can ask here, how to use WMB to achieve something (other than by bypassing WMB and using Java methods). |
|
Back to top |
|
 |
arunkumar1989 |
Posted: Mon Jun 17, 2013 1:46 am Post subject: |
|
|
 Voyager
Joined: 21 Nov 2012 Posts: 98 Location: Chennai
|
Yes zpat,
I accept this, "WMB does it everything for us.
but
if i want to connect two different databases like (Oracle and DB2) means(please do not think about why we need to use to two different db)
ESQL not possible to use but java we can. right....!!!!
Might be the WMB developers designed like every developers(PHP developer,Java Developer) can use easily. _________________ Being in a crowd when you are alone is ignorance. Enlightenment is being alone in a crowd; a feeling of oneness in a crowd. |
|
Back to top |
|
 |
zpat |
Posted: Mon Jun 17, 2013 2:10 am Post subject: |
|
|
 Jedi Council
Joined: 19 May 2001 Posts: 5866 Location: UK
|
ESQL is very easy to code. The danger of allowing Java syntax in JCN is that developers will start to bypass WMB features.
As for accessing both Oracle and DB2 - You are talking about in the same compute node?
I don't know the answer, but it must be possible to structure a flow that the access could be achieved without using Java.
Java - the lazy way to solve a problem, not the best way.
Try to avoid coding either - use the builtin nodes to the max.
What is the requirement exactly in functional terms? |
|
Back to top |
|
 |
Esa |
Posted: Mon Jun 17, 2013 4:08 am Post subject: |
|
|
 Grand Master
Joined: 22 May 2008 Posts: 1387 Location: Finland
|
arunkumar1989 wrote: |
if i want to connect two different databases like (Oracle and DB2) means(please do not think about why we need to use to two different db)
ESQL not possible to use but java we can. right....!!!!
|
http://www.mqseries.net/phpBB2/viewtopic.php?t=64524
ESQL possible, arunkumar1989 just doesn't comprehend? |
|
Back to top |
|
 |
lancelotlinc |
Posted: Mon Jun 17, 2013 4:14 am Post subject: |
|
|
 Jedi Knight
Joined: 22 Mar 2010 Posts: 4941 Location: Bloomington, IL USA
|
There are many transformation options in the Message Broker toolkit. One option does not invalidate any other option.
You can include JCNs in the same flow as ESQL Computes. You can include XSL Transforms in the same flow as .NET Compute.
[ Rhetorical ] Does that make the Mapping node any less important or useful? No.
[ Rhetorical ] Does that make the PHPCompute node any less important or useful? No.
[ Rhetorical ] Does that make the JCN node any less important or useful? No.
One is not better than any other. They perform things in different ways.
Just because some WMB developers used to be crusty old COBOL or RPG developers does not make those people any less important than Java developers. _________________ http://leanpub.com/IIB_Tips_and_Tricks
Save $20: Coupon Code: MQSERIES_READER |
|
Back to top |
|
 |
lucas |
Posted: Mon Jun 17, 2013 7:32 am Post subject: |
|
|
Novice
Joined: 14 Jun 2013 Posts: 17
|
I think the Java Compute Node and other language node just use for the people who doesn't want to use(even don't know) ESQL. The functional are same between these nodes.It just different implement. |
|
Back to top |
|
 |
zpat |
Posted: Mon Jun 17, 2013 8:00 am Post subject: |
|
|
 Jedi Council
Joined: 19 May 2001 Posts: 5866 Location: UK
|
You are getting off the point here and onto various soapboxes.
The OP thinks using JCN is necessary to access both Oracle and DB2 - True or False? |
|
Back to top |
|
 |
lancelotlinc |
Posted: Mon Jun 17, 2013 8:43 am Post subject: |
|
|
 Jedi Knight
Joined: 22 Mar 2010 Posts: 4941 Location: Bloomington, IL USA
|
zpat wrote: |
You are getting off the point here and onto various soapboxes.
The OP thinks using JCN is necessary to access both Oracle and DB2 - True or False? |
I don't know about that. I re-read the OP's comments, and it seems to me, he is asking about comparing the performance between ESQL and Java, which I believe is not relevant.
ESQL is much more efficient at referencing the logical message tree. JCNs are much more efficient at calling third-party jars.
I agree with you that people should maximize their leverage on the in-built WMB functionality and should avoid re-inventing the wheel in a JCN just because they can cut&paste some code they found on a blog.
It's not which node is best: it IS which node do I think is best to accomplish the immediate task at hand. Generally, if I am going to call a database, I use a Database node. If I'm going to drill into the LMT (Logical Message Tree) to make logic decisions, I use a Compute node because the Compute language is most efficient at referencing LMT structures. If I'm going to call out to a third-party jar, for example to camel-case some text string, I would use a JCN to do so.
These nodes are not mutually exclusive. A non-technical manager should not dictate that all code will be written in a Compute node or all code be written in a JCN because never can you say that this optimizes your code or optimizes your design.
The truth is, you need to choose the tool that best fits the task at hand. If you have a straight slot screw don't select a Phillips screw-driver. Use a JCN where a JCN makes sense and use ESQL where ESQL makes sense. Don't make a blanket law that says all code should be written in XYZ node. It makes no sense and has no merit. _________________ http://leanpub.com/IIB_Tips_and_Tricks
Save $20: Coupon Code: MQSERIES_READER |
|
Back to top |
|
 |
mqjeff |
Posted: Mon Jun 17, 2013 8:48 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
You can't use ODBC to more than one type of database from within the same Compute node.
You can't use ODBC to more than one type of database from within the same JavaCompute node.
You can use JDBC to more than one type of dataabase from within the same JavaCompute node.
You can use ODBC to one type of database and JDBC to another type of database from within the same JavaCompute node
You can use JDBC from a Compute node, if you're careful. |
|
Back to top |
|
 |
lancelotlinc |
Posted: Mon Jun 17, 2013 8:54 am Post subject: |
|
|
 Jedi Knight
Joined: 22 Mar 2010 Posts: 4941 Location: Bloomington, IL USA
|
mqjeff wrote: |
You can't use ODBC to more than one type of database from within the same Compute node.
You can't use ODBC to more than one type of database from within the same JavaCompute node.
You can use JDBC to more than one type of dataabase from within the same JavaCompute node.
You can use ODBC to one type of database and JDBC to another type of database from within the same JavaCompute node
You can use JDBC from a Compute node, if you're careful. |
It's true that each type of node has advantages and disadvantages. That's what makes all nodes in the pallet mutually inclusive. It's also well-known and well-acknowledged by many that the design and implementation of database support in the WMB product has some opportunity for growth.
What I mean by this is: a more optimized way of connecting to database instances is very much needed. WMB developers need [1] the ability to connect to more than one db instance from a single node and [2] for each instance of a message flow (when Additional Instances is greater than zero), a better way of multi-plexing db connections is crucial. _________________ http://leanpub.com/IIB_Tips_and_Tricks
Save $20: Coupon Code: MQSERIES_READER |
|
Back to top |
|
 |
mqjeff |
Posted: Mon Jun 17, 2013 9:08 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
lancelotlinc wrote: |
What I mean by this is: a more optimized way of connecting to database instances is very much needed. |
Yes, but that's a soapbox, not a response to the question...
 |
|
Back to top |
|
 |
lancelotlinc |
Posted: Mon Jun 17, 2013 9:10 am Post subject: |
|
|
 Jedi Knight
Joined: 22 Mar 2010 Posts: 4941 Location: Bloomington, IL USA
|
mqjeff wrote: |
lancelotlinc wrote: |
What I mean by this is: a more optimized way of connecting to database instances is very much needed. |
Yes, but that's a soapbox, not a response to the question... |
arunkumar1989 wrote: |
Hi All, Why we need java compute node, even we have compute node(ESQL) to do all business logic. |
You need various compute nodes to do various things with various efficencies. ESQL compute nodes are needed to swiftly reference LMT structures. JCNs are needed to efficiently call out to third-party jars.
ESQL vs. Java : It's not either or, but both. All inclusive. Agnostic. Does it really matter which one is used, as long as it works? If you're smart enough to write Java, you are also smart enough to write ESQL. _________________ http://leanpub.com/IIB_Tips_and_Tricks
Save $20: Coupon Code: MQSERIES_READER |
|
Back to top |
|
 |
|