Skip to Content

Review of SAP PI JMS adapter on demand connection Feature

You must have seen or gone through the recent enhancement of SAP PI JMS “on demand connection”( Note 1294766 – Connect on Demand Feature for JMS Adapter). This is very good enhancement & option towards JMS connectivity. Working on several PI project we used this option and found some interesting points towards and strongly feel that this is not very easy option – there are several complex factors including some bugs fixing from SAP side as well which you have to take care.


Below point or observation on same else it can be a disadvantage or you can have issue with this.


1)Since this option creates connection on demand i.e. create and disconnect TCP/IP connection we need to very sure about the time out and time wait configuration on receiver side. Time wait configuration determines the time that must elapse before TCP/IP can release a closed connection and reuse its resources. Since on demand use very heavily the TCP/IP connection you have to release TCP/IP connection on time/quickly.


Ex  tcp_keepinit=40


* Default value: 150(1/2 seconds)

* Recommended value: 40(1/2 seconds)



You can Follow IBM link of optimize the performance of Web Sphere Application Server for same.


2)Since this on demand feature create connection per message or create connection on keep alive configure on SAP JMS side you need to have enough TCP/IP port on receiver side. For example if you have default 0 value for this it means every message will create own TCP / IP connection and for that you should have enough TCP/IP port. Earlier XI was only having one connection for one channel but here one channel can have several connections. Depending on JMS configuration you should review your total TCP/IP port and need to increase them as per requirement.


3)Connection keep alive value on PI side :- You need to give this value depending on use of JMS channel , if you have regularly sending message is in interval (say 2 mins then it better to keep value >2 mins or 120 seconds) so that you can use same connection or if you have to send only few message in day then default value 0 sec is better and not keep connection alive for long time.




4) Analysis network use: you should also make analysis of your network that on demand connection TCP/IP load / extra connection load can be supported or not.


5) In end So many Corrections by SAP towards this feature:-


SAP Note 1442181 – JMS adapter deadlocks with Connection on Demand

Note 1358592 – NullPointerException with Connection on Demand 

Note 1339077 – Automatic reconnection fails after OnDemand Connection patch 

Note 1442181 -JMS adapter deadlocks with Connection on Demand

You must be Logged on to comment or reply to a post.