Len, what is your application ID?

On Mon, Sep 14, 2009 at 12:33 PM, Larry Cable <[email protected]> wrote:

>
> can you move the EMF creation out of the request path into the
> initialization path (Servlet.init(ServletConfig) or a static
> initializer
> in the Servlet class at startup ...
>
> BTW I also am using Spring IoC to create and inject the JDO EMF
> and I dont think I am seeing the same performance issues?
>
> Do you see similar startup costs on the local dev server as well as
> production?
>
> good luck
>
> - Larry
>
> On Sep 13, 5:27 pm, lent <[email protected]> wrote:
> > I have been doing some profiling on application startup and it seems
> > that there is a large amount of overhead:
> > - it takes about 5 seconds between the time the request is received to
> > where our spring initialization code is invoked
> > - creating an entity manager factory is taking on average 8+ seconds
> > Sometimes these numbers can be much bigger than this, for example we
> > have seen creating entity manager factory as much as 14 seconds.
> >
> > Given that the application needs to its own initialization (which we
> > are trying to minimize), we find that the application initialization
> > becomes very long and when the server is busy and the above number are
> > even higher, the application initialization fails to complete in 30
> > seconds.  Note that this is just the application initialization part
> > and then the actual request has to be processed which will take some
> > amount of time.
> >
> > Given that applications can be started on any given request, it makes
> > things difficult with application startup time and request processing
> > time with the 30 second limit.
> >
> > Len
> >
> > On Sep 8, 10:04 am, lent <[email protected]> wrote:
> >
> >
> >
> > > Hello,
> >
> > > We have an application which uses GWT (using GWT RPC) on the client
> > > side.  When the application is left idle for a while (~15 minutes) and
> > > the application sends a request, we get this reported on the client
> > > side:
> >
> > > "The server encountered an error and could not complete your request.
> > > If the problem persists, please report your problem and mention this
> > > error message and the query that caused it."
> >
> > > In the log, the following is logged:
> >
> > > "Request was aborted after waiting too long to attempt to service your
> > > request. Most likely, this indicates that you have reached your
> > > simultaneous active request limit. This is almost always due to
> > > excessively high latency in your app. Please seehttp://
> code.google.com/appengine/docs/quotas.htmlformore details."
> >
> > > I believe that our application has been swapped out and and when the
> > > request comes in the application is being loaded again as we see some
> > > log entries we make when the application (servlet) gets initialized.
> > > It does take some time to get the application initialized but the
> > > error is reported way before 30 seconds has elapsed.  Is there any way
> > > to avoid this problem?
> >
> > > Len- Hide quoted text -
> >
> > - Show quoted text -
> >
>

--~--~---------~--~----~------------~-------~--~----~
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