Scenario:-
Create a flow with HTTP Input and HTTP Reply Node
and deploy into Integration server.Trying to invoke/call the flow with HTTP
Request Node.
Flow Steps:
- Used
MQ Input node to get xml data from Queue which contains target service URL
- Used compute node to fetch URL from XML and set it to HTTPRequestURL
SET
OutputLocalEnvironment.Destination.HTTP.RequestURL=InputRoot.XMLNSC.ROOT.URL;
- Used HTTP Request node to invoke service
- Used
compute node to set response
- Sent
HTTP response to Webshphere MQ
Problem1:- Unable
to set HTTP.RequestURL in using Compute
Node,It shows default config value in debug mode
Cause:-
Haven’t changed (set to Message)compute mode in compute node.
Solution:-
Changed compute mode to Local-environment and Message in compute node.
Problem2:- HTTP
Node (404 Resource Not found Issue ) in
IBM Integration Bus
<html>
<head>
<title>IBM Integration Bus error
report</title>
</head>
<body>
<h1>HTTP Status 404 - Resource Not
Found</h1>
Cause:-Issue with the http port number in IIB
Solution:-.
- Check
default port number for HTTP
Syntax:
mqsireportproperties
Nodename –e servername –o objectname –n port
Example:
mqsireportproperties IIBDEVNODE –e IIBServer –o HTTPConnector –n port
- Configure/change
required port number by using below command,if you want to use other port number.
mqsichangeproperties IBNODE -b webadmin -o
HTTPConnector
-n port -v new_port_number
Performance tuning the HTTPRequest Node
By
default, the HTTPRequest node uses the platform default for its sockets
tcpnodelay setting. This setting disables the use of Nagles Algorithm, which is
a TCP feature that buffers up small packets into a single large packet for more
efficient transmission. This setting can briefly delay the transmission of
smaller packets, especially on some platforms. For example, on AIX, it has
resulted in poor response time and throughput when sending small messages using
the HTTPRequest node. To disable Nagles Algorithm, use this setting:
mqsichangeproperties IBNODE -e <ServerName>
-o ComIbmSocketConnectionManager -n
tcpNoDelay -v true
It is
much more efficient from a performance perspective to use persistent HTTP
connections. To ensure that the HTTPRequest node uses persistent connections,
check the box on the node labeled "Enable HTTP/1.1 keep-alive" under "HTTP
Settings" on the node properties. The remote end to which you are
connecting must also be configured to accept persistent HTTP connections, and
this configuration depends on the Web service provider/HTTP Server you are
using. By default, the socket used in the request node is recycled every 90
requests. To set the node to use the same socket for an unlimited number of
requests, use the command:
mqsichangeproperties
<node> -e <ServerName> -o
ComIbmSocketConnectionManager
-n maxKeepAliveRequests -v 0
I hope this post helps you. So far this is my best effort to explain.
Please share your valuable suggestions and feedback to my mail
id"mdondetisbit@gmail.com"
to improve myself.
Please post any issues/query’s related to BPM,WODM,IIB and DATAPOWER to "mdondetisbit@gmail.com"
No comments:
Post a Comment