Hi All,

Just thought I would share some timings I have made to determine what effect adding dependencies has on loading request time.

I made four apps using the Eclipse plugin and modified 3 of them to add or remove jars from the war/WEB-INF/lib directory.

Normal - default jars (13.2 MB)
Small - removed all persistence related jars leaving two GAE API jars (10.2 MB)
Large - added lots of jars from various projects (51MB)

Very basic testing procedure - I would just wait a few minutes and reload the Hello world servlet. Normally one minute was long enough to cause a loading request. However I did notice that waiting longer (5 mins) seemed to cause a longer wall clock time - perhaps there are several layers of caching for app resources that can expire.

Averages discard the highest timings:

                Total ms                CPU ms
Small   4079            501
                514                     501
                598                     535
                541                     552
                617                     518
                664                     535
                _____________
                587                     528
                

Normal  739                     585
                656                     535
                636                     585
                595                     552
                598                     535
                621                     552
                1148            552     
                _____________
                640                     556
                

Large   2274            1372
                1155            1171
                2690            1422
                4064            1255
                1906            1272
                1077            1188
                2817            1355
                ______________
                1986            1296

Some things to notice:

1 - Often the CPU ms (which comes off your quota) often has the same value. e.g. 535ms and 552ms each appear four times. That seems to indicate that some discreet function is used to calculate the cost of loading your app.

2 - It seems that each 1MB of dependencies added takes about 35ms of clock time to load and adds about 19ms to your CPU quota. However, this figures will probably vary depending on if the file is already loaded (by another app?) and possibly other factors. It is also possible that the extra load time is related to the number of jars rather than just their size.

3 - removing the standard persistence jars does seem to have some effect

John

--
You received this message because you are subscribed to the Google Groups "Google 
App Engine for Java" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.

Reply via email to