on 10-11-2007 10:07 AM
Hello All,
I've got a problem with a JCO connection. I have a WD application, that connects via aRFC to an R/3 system. When I open this application, it takes about 20 seconds, until I get the first screen. When pressing reload, it takes just about 1 or 2 seconds. Well, I thought, this could be the initialisation of the connections to the R/3 system. So I closed all the connection from the application server via SM04 on the R/3 system. But again, it takes just 1 or 2 seconds until the connections are established and the application is shown, when reloading the application. So I assume, the connections aren't the reason for the long waiting time at initial application start.
I don't think, it's J2EE compilation time, because the server isn't restartet over night, but the first time I open the application on the next day, it takes again 20 seconds.
The application runs on the same WAS as the enterprise portal. Even if I first log in to the Portal and after this open the appliation (in the same browser window without logging off), the first time it takes 20 seconds. So it shouldn't hava to do anything with the login.
I'm using 5 Models in this applications with TASK_Scope connections. Defined is a poolsize of 50 and 100 max connections, so this should be enough for me and shouldn't be the problem either. Metadata connections are configured to 1 pool and 5 max.
I've already read different threads, blogs and PDFs like "How to Configure the JCO Destination Settings". But nowhere I got an idea, why the initial start of this application should take so long and how I could find out, what the problem is.
It's NW04 SPS19, R/3: 6.40, SPS19
I hope, anybody here has a clue about this.
Best regards,
Christian Schebesta
Hi Christian,
One possibility I see here is( I am not sure whether you have checked it or not) runtime analysis of RFC.
Please check that by going to function module(SE37), menu(Function Module->Test->Runtime Analysis)
Regards,
Ganga.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi,
have you done a log entry to check how long the RFC call took and cheked it
in the default trace of the visual admin?
The Fast way for testing is to pass the URL Parameter: sap-wd-showInfo
like: http://..../Application?sap-wd-showInfo
this will show you the time the J2EE engine needed on javaside and also on the ABAP side in the Statusbar
You alse can use the codinglike:
long time = System.currentTimeMillis();
wdContext.currentBAPIElement().modelObject().execute();
wdContext.nodeOutput().invalidate();
System.out.println("Milliseconds used: " + (System.currentTimeMillis() - time);
Because I don't think it will have something to do with your RFC. I think it will more have something to do with the caching of your server.
Each time you deploy your application the Server has to restart and delete the old cache files of the application. So the First user taht will access your application has a longer responsetime because all the pages have to be generated and put into the work folder of the J2EE engine. And also it could be that the J2EE engine will release this cache also after some time to save memory.
Regards,
Dennis
Hello Dennis,
Thank you for your answer.
The performance issue occured not after deployment. Well, first call after deployment is slower, 2 or 3 seconds, but not 20 seconds. sap-wd-showInfo shows me on the first time I open the application J2EE: 2139 and Backend: 3145. The second call shows me J2EE: 118 Backend: 832. This should be ok, after deployment. But, I only deploy on the J2EE engine. Why do I have 3 seconds backend time? Every test after this showed me less than a second, until next deployment. Could this be a cache thing on the R/3 System?
Well, we had this 20 seconds several times, but even this morning, I couldn't get an application runtime of more than 5 Seconds. So, how to find the issue if the problem doesn't show up anymore?
Best regards,
Christian Schebesta
Hi,
when it only sometimes occurs, you should maybe try to run it always with the sap-wd-showinfo parameter to verify if it is the backend or the J2EE Engine.
Maybe you have sometimes a slow connection to R3 or the J2EE Server is busy and needs more time to create the pages.
If you would implement some tracing in your application, you could maybe find out which method take the most time.
Regards,
Dennis
User | Count |
---|---|
89 | |
10 | |
9 | |
9 | |
9 | |
6 | |
6 | |
5 | |
5 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.