on 06-16-2009 11:39 AM
Hi Guys,
We have a load of 300 concurrent users using 3 adaptive rfc models froma web dynpro project.
I have set up both JCO Modeldata Destination and RFC Metadata Destination. .For Modeldata Destination, I set up as Message Server.
JCo Pool Configuration (default settings)
Maximal Pool Size : 5
Maximum Connections: 10
Connection Timeout (msec.): 10
Maximum Waiting Time (msec.): 30
Logon Group: XXXX
User Authentication: Ticket
SNC: OFF
I set up my RFC Metadata Dest as Application Server, User Authetication: Userid/Password.
(This configuration is suggested by a lot SDN experienced fellows as best practice)
Also I disconnect the connections immediately after execution in the finally block using
wdContext.<your model element>().modelObject().modelInstance().disconnectIfAlive();
But I get the below error after around 100 users logon and run the application.
com.sap.tc.webdynpro.modelimpl.dynamicrfc.WDDynamicRFCExecuteException: Error connecting using JCO.Client: null
I can see from my back end R/3 and also in the web dynpro console the connections still alive for users and accumulating ..so wondering whats the use of disconnectIfAlive.
I thought Maximum Connections of 10 in jco pool modeldata should suffice as this is for each usnique and not the total.Am I right here.
Is there any other settings where I need to specify that a maximum of around 400 logon is expected
and jco pool configured accordingly? Also how to close the pool connections immediately when not in use..
Please advise what I should do to solve this problem.
Thanks.
Ashok
HI Ashok,
Please review the code for application and analyse whether the disconnect is properly placed.
For each model you use a connection is used. In case you have 3 models in a web dynpro application using the same JCo then each will require a separate connection. If you are binding a model in the initialization of the component then 3 connections will be blocked.
Check the JCo Pool connections during the execution of the application.
Go to the Web Dynpro Console (http://<server>:<port>/indexl.html -> wed dynpro -> Web Dynpro Console).
Click on Monitor -> JCo Pool Settings and refresh the table to get the latest information.
In case the maximum size if being reached reconfigure your settings.
Please review the pool JCo settings. Refer to following documents to determine the JCo settings:
Regards,
Kartikaye
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Ashok,
I thought Maximum Connections of 10 in jco pool modeldata should suffice as this is for each usnique and not the total.Am I right here.
Yes ,You are correct.Those ten connections is for that user only.
Are you using Same Model for all the 3 rfcs you are using ? Are you using Same JCO destinations for all the three RFCS?
Hope You find this useful..
Best Wishes
Idhaya R
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Idhaya,
I have totally 3 models each having around 5 rfc's and all using the same model data jco destination XXX.
With max connection set to 10 and pool size set to 5 for jco.Is their any particular config required from basis/R3 point of view?
Not sure why the jco client creation fails after certian number of logins or connections.
Any help will be useful
Regards,
Ashok
Hi,
Can you print the exception.getCause() in the catch block.
And what about the connection settings for MODELDATA destination.
Here you are getting the error while executing the model.
So pls check the MODELDATA destination connection settings also.
I guess this is not the issue with METADATA destination.
Regards,
Charan
Hi Ashok,
Why are using three models is there any specific buisness purpose or is it resuable?
Every model consumes one connection.
Look at page no. 38 of this document for optimising the use of JCOs in webdynpro
What is the value of gw/max_conn in your R/3. This decides how many connections is allowed in the backend.
http://help.sap.com/saphelp_nw04/helpdata/en/80/ee67f9591c442b98b6c81059fb552d/frameset.htm
/people/sunil.ojha5/blog/2008/02/08/rfc-quota-part-2
Look at page no. 8 of this document for setting gw/max_conn
Maximum value for gw/max_conn is 2000. Try to set some value below this.
Best Wishes
Idhaya R
Hi,
This is the issue with the max connections size in the JCO destinations.
If the connection is not available in the connection pool then you will get this error.
Increase the max connections size.
Go through the below pdf to calculate the no of connections.
//After every model execution disconnect the connection using the below code.
TestModel testModelInst=new TestModel();
testModelInst= (TestModel)WDModelFactory.getModelInstance(TestModel.class);
testModelInst.disconnectIfAlive();
Regards,
Charan
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
94 | |
13 | |
13 | |
11 | |
11 | |
7 | |
6 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.