[appengine-java] Re: App Engine and Spring slow start up
Yes, I have the same problem, although it doesn't happen every time. Unfortunately, I don't have a fix for this problem. My application uses a scheduled task to update the cache every 5 minutes - this task fails every time with a HDEE, and I didn't have the time to optimize it yet - maybe both issues are correlated. -- 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 google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
[appengine-java] Re: App Engine and Spring slow start up
Yes we have seen this problem a lot. Per our tests, an application becomes idle after a minute of non activity. So, the unfortunate reality is that you need to keep your app alive by simulating activity on it. Or go the non Spring route. Thanks On Feb 16, 4:14 pm, luijar wrote: > Hello Google App Engine forum, > > We have been seeing ever since we deployed our applications > (currently 3 of them) that when our application instances become idle > (they have not been hit for x amount of seconds) subsequent requests > return with a 500 response. Logs show a hard deadline exceeded error > > com.google.apphosting.runtime.HardDeadlineExceededError: This request > (32306ebe63b71ab0) started at 2010/02/12 20:39:11.984 UTC and was > still executing at 2010/02/12 20:39:41.225 UTC. > at > com.google.appengine.runtime.Request.process-32306ebe63b71ab0(Request.java) > > And the first line of the log message has the following : > > 02-12 12:39PM 14.088 > > javax.servlet.ServletContext log: Initializing Spring root > WebApplicationContext > > Question: > Has anyone else seen this behavior? How long does it take for an > application instance to become idle? > > Thanks -- 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 google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
[appengine-java] Re: App Engine and Spring slow start up
Great, all of our projects are Spring enabled lol. But I guess it's good that we are not the only ones seeing this, hopefully it gets a little more visibility. We have a cron job (1 min) that tries to keep our application alive by hitting a URL, but it does not do a very good job. It's frustrating and we don't even have access to the 500 page to tell the user to retry or go somewhere else. On Feb 17, 11:21 am, oth wrote: > Yes we have seen this problem a lot. Per our tests, an application > becomes idle after a minute of non activity. So, the unfortunate > reality is that you need to keep your app alive by simulating activity > on it. Or go the non Spring route. > > Thanks > > On Feb 16, 4:14 pm, luijar wrote: > > > Hello Google App Engine forum, > > > We have been seeing ever since we deployed our applications > > (currently 3 of them) that when our application instances become idle > > (they have not been hit for x amount of seconds) subsequent requests > > return with a 500 response. Logs show a hard deadline exceeded error > > > com.google.apphosting.runtime.HardDeadlineExceededError: This request > > (32306ebe63b71ab0) started at 2010/02/12 20:39:11.984 UTC and was > > still executing at 2010/02/12 20:39:41.225 UTC. > > at > > com.google.appengine.runtime.Request.process-32306ebe63b71ab0(Request.java) > > > And the first line of the log message has the following : > > > 02-12 12:39PM 14.088 > > > javax.servlet.ServletContext log: Initializing Spring root > > WebApplicationContext > > > Question: > > Has anyone else seen this behavior? How long does it take for an > > application instance to become idle? > > > Thanks -- 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 google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
[appengine-java] Re: App Engine and Spring slow start up
Hi, It appeared that long init problem is well known for Grails users: http://jira.codehaus.org/browse/GRAILSPLUGINS-1736 I wasted couple of weeks to create app I cannot run. Hope that SpringSource and Google can solve the issue. On Feb 17, 7:41 pm, Stephan Hartmann wrote: > The problem is that the initialization of your app takes longer than 30 > seconds. > Pinging your app doesn't help when the app is restarted due to redeployment > or maintenance, or when high traffic demands a second instance. > > You should try to reduce your startup time. > > regards, > Stephan > > 2010/2/17 luijar > > > Great, all of our projects are Spring enabled lol. But I guess it's > > good that we are not the only ones seeing this, hopefully it gets a > > little more visibility. We have a cron job (1 min) that tries to keep > > our application alive by hitting a URL, but it does not do a very good > > job. It's frustrating and we don't even have access to the 500 page to > > tell the user to retry or go somewhere else. > > > On Feb 17, 11:21 am, oth wrote: > > > Yes we have seen this problem a lot. Per our tests, an application > > > becomes idle after a minute of non activity. So, the unfortunate > > > reality is that you need to keep your app alive by simulating activity > > > on it. Or go the non Spring route. > > > > Thanks > > > > On Feb 16, 4:14 pm, luijar wrote: > > > > > Hello Google App Engine forum, > > > > > We have been seeing ever since we deployed our applications > > > > (currently 3 of them) that when our application instances become idle > > > > (they have not been hit for x amount of seconds) subsequent requests > > > > return with a 500 response. Logs show a hard deadline exceeded error > > > > > com.google.apphosting.runtime.HardDeadlineExceededError: This request > > > > (32306ebe63b71ab0) started at 2010/02/12 20:39:11.984 UTC and was > > > > still executing at 2010/02/12 20:39:41.225 UTC. > > > > at > > > com.google.appengine.runtime.Request.process-32306ebe63b71ab0(Request.java) > > > > > And the first line of the log message has the following : > > > > > 02-12 12:39PM 14.088 > > > > > javax.servlet.ServletContext log: Initializing Spring root > > > > WebApplicationContext > > > > > Question: > > > > Has anyone else seen this behavior? How long does it take for an > > > > application instance to become idle? > > > > > Thanks > > > -- > > 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 > > google-appengine-j...@googlegroups.com. > > To unsubscribe from this group, send email to > > google-appengine-java+unsubscr...@googlegroups.com > > . > > For more options, visit this group at > >http://groups.google.com/group/google-appengine-java?hl=en. -- 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 google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
[appengine-java] Re: App Engine and Spring slow start up
I believe my development environment was on 1.3.0. That might be something to look at, although it seems that probably it's a very small overhead, do you have any metrics that would give some evidence as to how much overhead is "offline precompilation" adding? Thanks On Feb 18, 2:04 pm, Don Schwarz wrote: > Have you deployed your application with the 1.3.1 SDK? That release turned > on "offline precompilation" by default, which is an optimization that may > help. > > On Thu, Feb 18, 2010 at 7:59 AM, Alex wrote: > > Hi, > > > It appeared that long init problem is well known for Grails users: > >http://jira.codehaus.org/browse/GRAILSPLUGINS-1736 > > > I wasted couple of weeks to create app I cannot run. Hope that > > SpringSource and Google can solve the issue. > > > On Feb 17, 7:41 pm, Stephan Hartmann wrote: > > > The problem is that the initialization of your app takes longer than 30 > > > seconds. > > > Pinging your app doesn't help when the app is restarted due to > > redeployment > > > or maintenance, or when high traffic demands a second instance. > > > > You should try to reduce your startup time. > > > > regards, > > > Stephan > > > > 2010/2/17 luijar > > > > > Great, all of our projects are Spring enabled lol. But I guess it's > > > > good that we are not the only ones seeing this, hopefully it gets a > > > > little more visibility. We have a cron job (1 min) that tries to keep > > > > our application alive by hitting a URL, but it does not do a very good > > > > job. It's frustrating and we don't even have access to the 500 page to > > > > tell the user to retry or go somewhere else. > > > > > On Feb 17, 11:21 am, oth wrote: > > > > > Yes we have seen this problem a lot. Per our tests, an application > > > > > becomes idle after a minute of non activity. So, the unfortunate > > > > > reality is that you need to keep your app alive by simulating > > activity > > > > > on it. Or go the non Spring route. > > > > > > Thanks > > > > > > On Feb 16, 4:14 pm, luijar wrote: > > > > > > > Hello Google App Engine forum, > > > > > > > We have been seeing ever since we deployed our applications > > > > > > (currently 3 of them) that when our application instances become > > idle > > > > > > (they have not been hit for x amount of seconds) subsequent > > requests > > > > > > return with a 500 response. Logs show a hard deadline exceeded > > error > > > > > > > com.google.apphosting.runtime.HardDeadlineExceededError: This > > request > > > > > > (32306ebe63b71ab0) started at 2010/02/12 20:39:11.984 UTC and was > > > > > > still executing at 2010/02/12 20:39:41.225 UTC. > > > > > > at > > > com.google.appengine.runtime.Request.process-32306ebe63b71ab0(Request.java) > > > > > > > And the first line of the log message has the following : > > > > > > > 02-12 12:39PM 14.088 > > > > > > > javax.servlet.ServletContext log: Initializing Spring root > > > > > > WebApplicationContext > > > > > > > Question: > > > > > > Has anyone else seen this behavior? How long does it take for an > > > > > > application instance to become idle? > > > > > > > Thanks > > > > > -- > > > > 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 > > > > google-appengine-j...@googlegroups.com. > > > > To unsubscribe from this group, send email to > > > > google-appengine-java+unsubscr...@googlegroups.com > > > > > > > . > > > > For more options, visit this group at > > > >http://groups.google.com/group/google-appengine-java?hl=en. > > > -- > > 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 > > google-appengine-j...@googlegroups.com. > > To unsubscribe from this group, send email to > > google-appengine-java+unsubscr...@googlegroups.com > > . > > For more options, visit this group at > >http://groups.google.com/group/google-appengine-java?hl=en. -- 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 google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
[appengine-java] Re: App Engine and Spring slow start up
Has the above mentioned "offline precompilatio" in 1.3.1 been able to solve your issue, I plan to use Spring on Java for my Business App which is complex and could be based on SOA. Kindly let me know if your issue was resolved or reduced by using the above fix. On Feb 20, 12:05 am, luijar wrote: > I believe my development environment was on 1.3.0. That might be > something to look at, although it seems that probably it's a very > small overhead, do you have any metrics that would give some evidence > as to how much overhead is "offline precompilation" adding? > > Thanks > > On Feb 18, 2:04 pm, Don Schwarz wrote: > > > > > Have you deployed your application with the 1.3.1 SDK? That release turned > > on "offline precompilation" by default, which is an optimization that may > > help. > > > On Thu, Feb 18, 2010 at 7:59 AM, Alex wrote: > > > Hi, > > > > It appeared that long init problem is well known for Grails users: > > >http://jira.codehaus.org/browse/GRAILSPLUGINS-1736 > > > > I wasted couple of weeks to create app I cannot run. Hope that > > > SpringSource and Google can solve the issue. > > > > On Feb 17, 7:41 pm, Stephan Hartmann wrote: > > > > The problem is that the initialization of your app takes longer than 30 > > > > seconds. > > > > Pinging your app doesn't help when the app is restarted due to > > > redeployment > > > > or maintenance, or when high traffic demands a second instance. > > > > > You should try to reduce your startup time. > > > > > regards, > > > > Stephan > > > > > 2010/2/17 luijar > > > > > > Great, all of our projects areSpringenabled lol. But I guess it's > > > > > good that we are not the only ones seeing this, hopefully it gets a > > > > > little more visibility. We have a cron job (1 min) that tries to keep > > > > > our application alive by hitting a URL, but it does not do a very good > > > > > job. It's frustrating and we don't even have access to the 500 page to > > > > > tell the user to retry or go somewhere else. > > > > > > On Feb 17, 11:21 am, oth wrote: > > > > > > Yes we have seen this problem a lot. Per our tests, an application > > > > > > becomes idle after a minute of non activity. So, the unfortunate > > > > > > reality is that you need to keep your app alive by simulating > > > activity > > > > > > on it. Or go the nonSpringroute. > > > > > > > Thanks > > > > > > > On Feb 16, 4:14 pm, luijar wrote: > > > > > > > > Hello Google App Engine forum, > > > > > > > > We have been seeing ever since we deployed our applications > > > > > > > (currently 3 of them) that when our application instances become > > > idle > > > > > > > (they have not been hit for x amount of seconds) subsequent > > > requests > > > > > > > return with a 500 response. Logs show a hard deadline exceeded > > > error > > > > > > > > com.google.apphosting.runtime.HardDeadlineExceededError: This > > > request > > > > > > > (32306ebe63b71ab0) started at 2010/02/12 20:39:11.984 UTC and was > > > > > > > still executing at 2010/02/12 20:39:41.225 UTC. > > > > > > > at > > > > com.google.appengine.runtime.Request.process-32306ebe63b71ab0(Request.java) > > > > > > > > And the first line of the log message has the following : > > > > > > > > 02-12 12:39PM 14.088 > > > > > > > > javax.servlet.ServletContext log: InitializingSpringroot > > > > > > > WebApplicationContext > > > > > > > > Question: > > > > > > > Has anyone else seen this behavior? How long does it take for an > > > > > > > application instance to become idle? > > > > > > > > Thanks > > > > > > -- > > > > > You received this message because you are subscribed to the Google > > > Groups > > > > > "Google App Engine forJava" group. > > > > > To post to this group, send email to > > > > > google-appengine-j...@googlegroups.com. > > > > > To unsubscribe from this group, send email to > > > > > google-appengine-java+unsubscr...@googlegroups.com > > > > unsubscr...@googlegroups.com> > > > > > > > > > . > > > > > For more options, visit this group at > > > > >http://groups.google.com/group/google-appengine-java?hl=en. > > > > -- > > > You received this message because you are subscribed to the Google Groups > > > "Google App Engine forJava" group. > > > To post to this group, send email to > > > google-appengine-j...@googlegroups.com. > > > To unsubscribe from this group, send email to > > > google-appengine-java+unsubscr...@googlegroups.com > > unsubscr...@googlegroups.com> > > > . > > > For more options, visit this group at > > >http://groups.google.com/group/google-appengine-java?hl=en. -- 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 google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
[appengine-java] Re: App Engine and Spring slow start up
Nope, I am still seeing it. It's quite frustrating. I even tried to reduce Spring init time by removing schema validation from the application context init. But, that does not seem to work. I am using Spring annotations and component scanning to autowire my beans, I wonder if using plain XML configuration will make autowiring faster. On Feb 23, 9:14 pm, charming30 wrote: > Has the above mentioned "offline precompilatio" in 1.3.1 been able to > solve your issue, I plan to use Spring on Java for my Business App > which is complex and could be based on SOA. Kindly let me know if your > issue was resolved or reduced by using the above fix. > > On Feb 20, 12:05 am, luijar wrote: > > > I believe my development environment was on 1.3.0. That might be > > something to look at, although it seems that probably it's a very > > small overhead, do you have any metrics that would give some evidence > > as to how much overhead is "offline precompilation" adding? > > > Thanks > > > On Feb 18, 2:04 pm, Don Schwarz wrote: > > > > Have you deployed your application with the 1.3.1 SDK? That release > > > turned > > > on "offline precompilation" by default, which is an optimization that may > > > help. > > > > On Thu, Feb 18, 2010 at 7:59 AM, Alex wrote: > > > > Hi, > > > > > It appeared that long init problem is well known for Grails users: > > > >http://jira.codehaus.org/browse/GRAILSPLUGINS-1736 > > > > > I wasted couple of weeks to create app I cannot run. Hope that > > > > SpringSource and Google can solve the issue. > > > > > On Feb 17, 7:41 pm, Stephan Hartmann wrote: > > > > > The problem is that the initialization of your app takes longer than > > > > > 30 > > > > > seconds. > > > > > Pinging your app doesn't help when the app is restarted due to > > > > redeployment > > > > > or maintenance, or when high traffic demands a second instance. > > > > > > You should try to reduce your startup time. > > > > > > regards, > > > > > Stephan > > > > > > 2010/2/17 luijar > > > > > > > Great, all of our projects areSpringenabled lol. But I guess it's > > > > > > good that we are not the only ones seeing this, hopefully it gets a > > > > > > little more visibility. We have a cron job (1 min) that tries to > > > > > > keep > > > > > > our application alive by hitting a URL, but it does not do a very > > > > > > good > > > > > > job. It's frustrating and we don't even have access to the 500 page > > > > > > to > > > > > > tell the user to retry or go somewhere else. > > > > > > > On Feb 17, 11:21 am, oth wrote: > > > > > > > Yes we have seen this problem a lot. Per our tests, an application > > > > > > > becomes idle after a minute of non activity. So, the unfortunate > > > > > > > reality is that you need to keep your app alive by simulating > > > > activity > > > > > > > on it. Or go the nonSpringroute. > > > > > > > > Thanks > > > > > > > > On Feb 16, 4:14 pm, luijar wrote: > > > > > > > > > Hello Google App Engine forum, > > > > > > > > > We have been seeing ever since we deployed our applications > > > > > > > > (currently 3 of them) that when our application instances become > > > > idle > > > > > > > > (they have not been hit for x amount of seconds) subsequent > > > > requests > > > > > > > > return with a 500 response. Logs show a hard deadline exceeded > > > > error > > > > > > > > > com.google.apphosting.runtime.HardDeadlineExceededError: This > > > > request > > > > > > > > (32306ebe63b71ab0) started at 2010/02/12 20:39:11.984 UTC and > > > > > > > > was > > > > > > > > still executing at 2010/02/12 20:39:41.225 UTC. > > > > > > > > at > > > > > com.google.appengine.runtime.Request.process-32306ebe63b71ab0(Request.java) > > > > > > > > > And the first line of the log message has the following : > > > > > > > > > 02-12 12:39PM 14.088 > > > > > > > > > javax.servlet.ServletContext log: InitializingSpringroot > > > > > > > > WebApplicationContext > > > > > > > > > Question: > > > > > > > > Has anyone else seen this behavior? How long does it take for an > > > > > > > > application instance to become idle? > > > > > > > > > Thanks > > > > > > > -- > > > > > > You received this message because you are subscribed to the Google > > > > Groups > > > > > > "Google App Engine forJava" group. > > > > > > To post to this group, send email to > > > > > > google-appengine-j...@googlegroups.com. > > > > > > To unsubscribe from this group, send email to > > > > > > google-appengine-java+unsubscr...@googlegroups.com > > > > > unsubscr...@googlegroups.com> > > > > > > > > > > > . > > > > > > For more options, visit this group at > > > > > >http://groups.google.com/group/google-appengine-java?hl=en. > > > > > -- > > > > You received this message because you are subscribed to the Google > > > > Groups > > > > "Google App Engine forJava" group. > > > > To post to this group, send email to > > > > google-appengine-j...@googlegroups.com. > > > > To unsubscribe from this group, send email to > > > > google-appengi
[appengine-java] Re: App Engine and Spring slow start up
Thanks for the advice, I'll try that. On Mar 1, 2:31 pm, Rusty Wright wrote: > Try using the old way with xml configuration for wiring your beans together. > The word on the street is that Spring's component scanning takes a lot of > time. > > > > luijar wrote: > > Nope, I am still seeing it. It's quite frustrating. I even tried to > > reduce Spring init time by removing schema validation from the > > application context init. But, that does not seem to work. I am using > > Spring annotations and component scanning to autowire my beans, I > > wonder if using plain XML configuration will make autowiring faster. > > > On Feb 23, 9:14 pm, charming30 wrote: > >> Has the above mentioned "offline precompilatio" in 1.3.1 been able to > >> solve your issue, I plan to use Spring on Java for my Business App > >> which is complex and could be based on SOA. Kindly let me know if your > >> issue was resolved or reduced by using the above fix. > > >> On Feb 20, 12:05 am, luijar wrote: > > >>> I believe my development environment was on 1.3.0. That might be > >>> something to look at, although it seems that probably it's a very > >>> small overhead, do you have any metrics that would give some evidence > >>> as to how much overhead is "offline precompilation" adding? > >>> Thanks > >>> On Feb 18, 2:04 pm, Don Schwarz wrote: > Have you deployed your application with the 1.3.1 SDK? That release > turned > on "offline precompilation" by default, which is an optimization that may > help. > On Thu, Feb 18, 2010 at 7:59 AM, Alex wrote: > > Hi, > > It appeared that long init problem is well known for Grails users: > >http://jira.codehaus.org/browse/GRAILSPLUGINS-1736 > > I wasted couple of weeks to create app I cannot run. Hope that > > SpringSource and Google can solve the issue. > > On Feb 17, 7:41 pm, Stephan Hartmann wrote: > >> The problem is that the initialization of your app takes longer than 30 > >> seconds. > >> Pinging your app doesn't help when the app is restarted due to > > redeployment > >> or maintenance, or when high traffic demands a second instance. > >> You should try to reduce your startup time. > >> regards, > >> Stephan > >> 2010/2/17 luijar > >>> Great, all of our projects areSpringenabled lol. But I guess it's > >>> good that we are not the only ones seeing this, hopefully it gets a > >>> little more visibility. We have a cron job (1 min) that tries to keep > >>> our application alive by hitting a URL, but it does not do a very good > >>> job. It's frustrating and we don't even have access to the 500 page to > >>> tell the user to retry or go somewhere else. > >>> On Feb 17, 11:21 am, oth wrote: > Yes we have seen this problem a lot. Per our tests, an application > becomes idle after a minute of non activity. So, the unfortunate > reality is that you need to keep your app alive by simulating > > activity > on it. Or go the nonSpringroute. > Thanks > On Feb 16, 4:14 pm, luijar wrote: > > Hello Google App Engine forum, > > We have been seeing ever since we deployed our applications > > (currently 3 of them) that when our application instances become > > idle > > (they have not been hit for x amount of seconds) subsequent > > requests > > return with a 500 response. Logs show a hard deadline exceeded > > error > > com.google.apphosting.runtime.HardDeadlineExceededError: This > > request > > (32306ebe63b71ab0) started at 2010/02/12 20:39:11.984 UTC and was > > still executing at 2010/02/12 20:39:41.225 UTC. > > at > > com.google.appengine.runtime.Request.process-32306ebe63b71ab0(Request.java) > > And the first line of the log message has the following : > > 02-12 12:39PM 14.088 > > javax.servlet.ServletContext log: InitializingSpringroot > > WebApplicationContext > > Question: > > Has anyone else seen this behavior? How long does it take for an > > application instance to become idle? > > Thanks > >>> -- > >>> You received this message because you are subscribed to the Google > > Groups > >>> "Google App Engine forJava" group. > >>> To post to this group, send email to > >>> google-appengine-j...@googlegroups.com. > >>> To unsubscribe from this group, send email to > >>> google-appengine-java+unsubscr...@googlegroups.com >>> unsubscr...@googlegroups.com> > > > >>> . > >>> For more options, visit this group at > >>>http://groups.google.com/group/google-appengine-java?hl=en. > > -- > > You received this message because you are subscribed to the Google > > Groups > > "Google App Engine forJava" group. > > To post to this group, send email to > > google-appengine-j...@googlegroups.com. >
[appengine-java] Re: App Engine and Spring slow start up
Thanks Toby, Can you point me to the threads you talk about? Thanks, Luijar On Mar 2, 4:15 am, Toby wrote: > Hi luijar, > > I had the same problem -but no time-out- and I got some better > performance by removing all autowire and annotation-scan stuff and > also by putting lazy-init="true" on my beans. I even re-wrote a bean > by a regular Servlet, without any Spring and the startup performance > was as poor as with using spring. So I think the initialization > overhead is not that big.Depends a lot on your application, though. > > What is the worst is that even once an instance is started up, it > immediately seems to be suspended again. I think the cron-job is > probably not the best way to do it even though it seems the only > posibility for the moment. You will find a lot of threads on this > topic. > > Toby > > On Mar 2, 3:27 am, yjun hu wrote: > > > i got the same problem too, there is no better way to resolve it, i just try > > to hitting a url with cron job. > > > On Tue, Mar 2, 2010 at 3:50 AM, luijar wrote: > > > Thanks for the advice, I'll try that. > > > > On Mar 1, 2:31 pm, Rusty Wright wrote: > > > > Try using the old way with xml configuration for wiring your beans > > > together. The word on the street is that Spring's component scanning > > > takes > > > a lot of time. > > > > > luijar wrote: > > > > > Nope, I am still seeing it. It's quite frustrating. I even tried to > > > > > reduce Spring init time by removing schema validation from the > > > > > application context init. But, that does not seem to work. I am using > > > > > Spring annotations and component scanning to autowire my beans, I > > > > > wonder if using plain XML configuration will make autowiring faster. > > > > > > On Feb 23, 9:14 pm, charming30 wrote: > > > > >> Has the above mentioned "offline precompilatio" in 1.3.1 been able to > > > > >> solve your issue, I plan to use Spring on Java for my Business App > > > > >> which is complex and could be based on SOA. Kindly let me know if > > > > >> your > > > > >> issue was resolved or reduced by using the above fix. > > > > > >> On Feb 20, 12:05 am, luijar wrote: > > > > > >>> I believe my development environment was on 1.3.0. That might be > > > > >>> something to look at, although it seems that probably it's a very > > > > >>> small overhead, do you have any metrics that would give some > > > > >>> evidence > > > > >>> as to how much overhead is "offline precompilation" adding? > > > > >>> Thanks > > > > >>> On Feb 18, 2:04 pm, Don Schwarz wrote: > > > > Have you deployed your application with the 1.3.1 SDK? That > > > > release > > > turned > > > > on "offline precompilation" by default, which is an optimization > > > that may > > > > help. > > > > On Thu, Feb 18, 2010 at 7:59 AM, Alex wrote: > > > > > Hi, > > > > > It appeared that long init problem is well known for Grails users: > > > > >http://jira.codehaus.org/browse/GRAILSPLUGINS-1736 > > > > > I wasted couple of weeks to create app I cannot run. Hope that > > > > > SpringSource and Google can solve the issue. > > > > > On Feb 17, 7:41 pm, Stephan Hartmann wrote: > > > > >> The problem is that the initialization of your app takes longer > > > than 30 > > > > >> seconds. > > > > >> Pinging your app doesn't help when the app is restarted due to > > > > > redeployment > > > > >> or maintenance, or when high traffic demands a second instance. > > > > >> You should try to reduce your startup time. > > > > >> regards, > > > > >> Stephan > > > > >> 2010/2/17 luijar > > > > >>> Great, all of our projects areSpringenabled lol. But I guess > > > > >>> it's > > > > >>> good that we are not the only ones seeing this, hopefully it > > > > >>> gets > > > a > > > > >>> little more visibility. We have a cron job (1 min) that tries to > > > keep > > > > >>> our application alive by hitting a URL, but it does not do a > > > > >>> very > > > good > > > > >>> job. It's frustrating and we don't even have access to the 500 > > > page to > > > > >>> tell the user to retry or go somewhere else. > > > > >>> On Feb 17, 11:21 am, oth wrote: > > > > Yes we have seen this problem a lot. Per our tests, an > > > application > > > > becomes idle after a minute of non activity. So, the > > > > unfortunate > > > > reality is that you need to keep your app alive by simulating > > > > > activity > > > > on it. Or go the nonSpringroute. > > > > Thanks > > > > On Feb 16, 4:14 pm, luijar wrote: > > > > > Hello Google App Engine forum, > > > > > We have been seeing ever since we deployed our applications > > > > > (currently 3 of them) that when our application instances > > > become > > > > > idle > > > > > (they have not been hit for x amount of seconds) subsequent > > > > > requests > > > > >>>
[appengine-java] Re: App Engine and Spring slow start up
I think it's insane that it takes this long: org.springframework.web.context.ContextLoader initWebApplicationContext: Root WebApplicationContext: initialization completed in 17914 ms The only reason I haven't taken Spring out and use Struts for MVC and Guice for DI (or equivalent technologies) is that I am also using Spring AOP, which I suspect adds a lot of overhead to the mix. On Mar 3, 5:18 pm, luijar wrote: > Thanks Toby, > > Can you point me to the threads you talk about? > > Thanks, > Luijar > > On Mar 2, 4:15 am, Toby wrote: > > > Hi luijar, > > > I had the same problem -but no time-out- and I got some better > > performance by removing all autowire and annotation-scan stuff and > > also by putting lazy-init="true" on my beans. I even re-wrote a bean > > by a regular Servlet, without any Spring and the startup performance > > was as poor as with using spring. So I think the initialization > > overhead is not that big.Depends a lot on your application, though. > > > What is the worst is that even once an instance is started up, it > > immediately seems to be suspended again. I think the cron-job is > > probably not the best way to do it even though it seems the only > > posibility for the moment. You will find a lot of threads on this > > topic. > > > Toby > > > On Mar 2, 3:27 am, yjun hu wrote: > > > > i got the same problem too, there is no better way to resolve it, i just > > > try > > > to hitting a url with cron job. > > > > On Tue, Mar 2, 2010 at 3:50 AM, luijar wrote: > > > > Thanks for the advice, I'll try that. > > > > > On Mar 1, 2:31 pm, Rusty Wright wrote: > > > > > Try using the old way with xml configuration for wiring your beans > > > > together. The word on the street is that Spring's component scanning > > > > takes > > > > a lot of time. > > > > > > luijar wrote: > > > > > > Nope, I am still seeing it. It's quite frustrating. I even tried to > > > > > > reduce Spring init time by removing schema validation from the > > > > > > application context init. But, that does not seem to work. I am > > > > > > using > > > > > > Spring annotations and component scanning to autowire my beans, I > > > > > > wonder if using plain XML configuration will make autowiring faster. > > > > > > > On Feb 23, 9:14 pm, charming30 wrote: > > > > > >> Has the above mentioned "offline precompilatio" in 1.3.1 been able > > > > > >> to > > > > > >> solve your issue, I plan to use Spring on Java for my Business App > > > > > >> which is complex and could be based on SOA. Kindly let me know if > > > > > >> your > > > > > >> issue was resolved or reduced by using the above fix. > > > > > > >> On Feb 20, 12:05 am, luijar wrote: > > > > > > >>> I believe my development environment was on 1.3.0. That might be > > > > > >>> something to look at, although it seems that probably it's a very > > > > > >>> small overhead, do you have any metrics that would give some > > > > > >>> evidence > > > > > >>> as to how much overhead is "offline precompilation" adding? > > > > > >>> Thanks > > > > > >>> On Feb 18, 2:04 pm, Don Schwarz wrote: > > > > > Have you deployed your application with the 1.3.1 SDK? That > > > > > release > > > > turned > > > > > on "offline precompilation" by default, which is an optimization > > > > that may > > > > > help. > > > > > On Thu, Feb 18, 2010 at 7:59 AM, Alex > > > > > wrote: > > > > > > Hi, > > > > > > It appeared that long init problem is well known for Grails > > > > > > users: > > > > > >http://jira.codehaus.org/browse/GRAILSPLUGINS-1736 > > > > > > I wasted couple of weeks to create app I cannot run. Hope that > > > > > > SpringSource and Google can solve the issue. > > > > > > On Feb 17, 7:41 pm, Stephan Hartmann > > > > > > wrote: > > > > > >> The problem is that the initialization of your app takes longer > > > > than 30 > > > > > >> seconds. > > > > > >> Pinging your app doesn't help when the app is restarted due to > > > > > > redeployment > > > > > >> or maintenance, or when high traffic demands a second instance. > > > > > >> You should try to reduce your startup time. > > > > > >> regards, > > > > > >> Stephan > > > > > >> 2010/2/17 luijar > > > > > >>> Great, all of our projects areSpringenabled lol. But I guess > > > > > >>> it's > > > > > >>> good that we are not the only ones seeing this, hopefully it > > > > > >>> gets > > > > a > > > > > >>> little more visibility. We have a cron job (1 min) that tries > > > > > >>> to > > > > keep > > > > > >>> our application alive by hitting a URL, but it does not do a > > > > > >>> very > > > > good > > > > > >>> job. It's frustrating and we don't even have access to the 500 > > > > page to > > > > > >>> tell the user to retry or go somewhere else. > > > > > >>> On Feb 17, 11:21 am, oth wrote: > > > > > Yes we have seen this problem a lot. Per our tes
[appengine-java] Re: App Engine and Spring slow start up
The problem is one I face without even using spring, google loves to lecture people on how the web should be fast but this doesn't apply to their own app engine platform. Express your frustration at my fb page http://www.facebook.com/pages/Google-Please-Fix-App-Engine-For-Java/372774516220 feel free to post screen captures something google groups doesn't allow On Mar 3, 5:23 pm, luijar wrote: > I think it's insane that it takes this long: > > org.springframework.web.context.ContextLoader > initWebApplicationContext: Root WebApplicationContext: initialization > completed in 17914 ms > > The only reason I haven't taken Spring out and use Struts for MVC and > Guice for DI (or equivalent technologies) is that I am also using > Spring AOP, which I suspect adds a lot of overhead to the mix. > > On Mar 3, 5:18 pm, luijar wrote: > > > > > Thanks Toby, > > > Can you point me to the threads you talk about? > > > Thanks, > > Luijar > > > On Mar 2, 4:15 am, Toby wrote: > > > > Hi luijar, > > > > I had the same problem -but no time-out- and I got some better > > > performance by removing all autowire and annotation-scan stuff and > > > also by putting lazy-init="true" on my beans. I even re-wrote a bean > > > by a regular Servlet, without any Spring and the startup performance > > > was as poor as with using spring. So I think the initialization > > > overhead is not that big.Depends a lot on your application, though. > > > > What is the worst is that even once an instance is started up, it > > > immediately seems to be suspended again. I think the cron-job is > > > probably not the best way to do it even though it seems the only > > > posibility for the moment. You will find a lot of threads on this > > > topic. > > > > Toby > > > > On Mar 2, 3:27 am, yjun hu wrote: > > > > > i got the same problem too, there is no better way to resolve it, i > > > > just try > > > > to hitting a url with cron job. > > > > > On Tue, Mar 2, 2010 at 3:50 AM, luijar wrote: > > > > > Thanks for the advice, I'll try that. > > > > > > On Mar 1, 2:31 pm, Rusty Wright wrote: > > > > > > Try using the old way with xml configuration for wiring your beans > > > > > together. The word on the street is that Spring's component scanning > > > > > takes > > > > > a lot of time. > > > > > > > luijar wrote: > > > > > > > Nope, I am still seeing it. It's quite frustrating. I even tried > > > > > > > to > > > > > > > reduce Spring init time by removing schema validation from the > > > > > > > application context init. But, that does not seem to work. I am > > > > > > > using > > > > > > > Spring annotations and component scanning to autowire my beans, I > > > > > > > wonder if using plain XML configuration will make autowiring > > > > > > > faster. > > > > > > > > On Feb 23, 9:14 pm, charming30 wrote: > > > > > > >> Has the above mentioned "offline precompilatio" in 1.3.1 been > > > > > > >> able to > > > > > > >> solve your issue, I plan to use Spring on Java for my Business > > > > > > >> App > > > > > > >> which is complex and could be based on SOA. Kindly let me know > > > > > > >> if your > > > > > > >> issue was resolved or reduced by using the above fix. > > > > > > > >> On Feb 20, 12:05 am, luijar wrote: > > > > > > > >>> I believe my development environment was on 1.3.0. That might be > > > > > > >>> something to look at, although it seems that probably it's a > > > > > > >>> very > > > > > > >>> small overhead, do you have any metrics that would give some > > > > > > >>> evidence > > > > > > >>> as to how much overhead is "offline precompilation" adding? > > > > > > >>> Thanks > > > > > > >>> On Feb 18, 2:04 pm, Don Schwarz wrote: > > > > > > Have you deployed your application with the 1.3.1 SDK? That > > > > > > release > > > > > turned > > > > > > on "offline precompilation" by default, which is an > > > > > > optimization > > > > > that may > > > > > > help. > > > > > > On Thu, Feb 18, 2010 at 7:59 AM, Alex > > > > > > wrote: > > > > > > > Hi, > > > > > > > It appeared that long init problem is well known for Grails > > > > > > > users: > > > > > > >http://jira.codehaus.org/browse/GRAILSPLUGINS-1736 > > > > > > > I wasted couple of weeks to create app I cannot run. Hope that > > > > > > > SpringSource and Google can solve the issue. > > > > > > > On Feb 17, 7:41 pm, Stephan Hartmann > > > > > > > wrote: > > > > > > >> The problem is that the initialization of your app takes > > > > > > >> longer > > > > > than 30 > > > > > > >> seconds. > > > > > > >> Pinging your app doesn't help when the app is restarted due > > > > > > >> to > > > > > > > redeployment > > > > > > >> or maintenance, or when high traffic demands a second > > > > > > >> instance. > > > > > > >> You should try to reduce your startup time. > > > > > > >> regards, > > > > > > >> Stephan > > > > > > >> 2010/2/17 luijar > > > > >
[appengine-java] Re: App Engine and Spring slow start up
Hi Robert, Indeed also without spring the start up is slow as hell. When I demo my GAE application I always feel ashamed when there is this big long pause to start it up. With all the buzz it is hard to justify that it is not my fault that the system is having this fault. I think that this is the number one problem to be resolved. I guess it is a basic failure in the architecture of app engine. Its probably designed for python scripts and does simply not adapt to the nature of java applications. I heard that e.g. all the jars in the classpath will be loaded on the fly. I do not understand why there is not at least a way to keep the apps running. I would even pay for that. Once an app runs it runs. At least when you use memcache you can work around the long latency of the data store. I am willing to adapt my application to this new platform. But for the slow start up I am really helpless. It would be great to get some input from a GAE team member. Cheers, Toby On Mar 3, 11:35 pm, Robert Lancer wrote: > The problem is one I face without even usingspring, google loves to > lecture people on how the web should be fast but this doesn't apply to > their own app engine platform. Express your frustration at my fb > pagehttp://www.facebook.com/pages/Google-Please-Fix-App-Engine-For-Java/3... > feel free to post screen captures something google groups doesn't > allow > > On Mar 3, 5:23 pm, luijar wrote: > > > I think it's insane that it takes this long: > > > org.springframework.web.context.ContextLoader > > initWebApplicationContext: Root WebApplicationContext: initialization > > completed in 17914 ms > > > The only reason I haven't takenSpringout and use Struts for MVC and > > Guice for DI (or equivalent technologies) is that I am also using > >SpringAOP, which I suspect adds a lot of overhead to the mix. > > > On Mar 3, 5:18 pm, luijar wrote: > > > > Thanks Toby, > > > > Can you point me to the threads you talk about? > > > > Thanks, > > > Luijar > > > > On Mar 2, 4:15 am, Toby wrote: > > > > > Hi luijar, > > > > > I had the same problem -but no time-out- and I got some better > > > > performance by removing all autowire and annotation-scan stuff and > > > > also by putting lazy-init="true" on my beans. I even re-wrote a bean > > > > by a regular Servlet, without anySpringand thestartupperformance > > > > was as poor as with usingspring. So I think the initialization > > > > overhead is not that big.Depends a lot on your application, though. > > > > > What is the worst is that even once an instance is started up, it > > > > immediately seems to be suspended again. I think the cron-job is > > > > probably not the best way to do it even though it seems the only > > > > posibility for the moment. You will find a lot of threads on this > > > > topic. > > > > > Toby > > > > > On Mar 2, 3:27 am, yjun hu wrote: > > > > > > i got the same problem too, there is no better way to resolve it, i > > > > > just try > > > > > to hitting a url with cron job. > > > > > > On Tue, Mar 2, 2010 at 3:50 AM, luijar > > > > > wrote: > > > > > > Thanks for the advice, I'll try that. > > > > > > > On Mar 1, 2:31 pm, Rusty Wright wrote: > > > > > > > Try using the old way with xml configuration for wiring your beans > > > > > > together. The word on the street is thatSpring'scomponent scanning > > > > > > takes > > > > > > a lot of time. > > > > > > > > luijar wrote: > > > > > > > > Nope, I am still seeing it. It's quite frustrating. I even > > > > > > > > tried to > > > > > > > > reduceSpringinit time by removing schema validation from the > > > > > > > > application context init. But, that does not seem to work. I am > > > > > > > > using > > > > > > > >Springannotations and component scanning to autowire my beans, I > > > > > > > > wonder if using plain XML configuration will make autowiring > > > > > > > > faster. > > > > > > > > > On Feb 23, 9:14 pm, charming30 wrote: > > > > > > > >> Has the above mentioned "offline precompilatio" in 1.3.1 been > > > > > > > >> able to > > > > > > > >> solve your issue, I plan to useSpringon Java for my Business > > > > > > > >> App > > > > > > > >> which is complex and could be based on SOA. Kindly let me know > > > > > > > >> if your > > > > > > > >> issue was resolved or reduced by using the above fix. > > > > > > > > >> On Feb 20, 12:05 am, luijar wrote: > > > > > > > > >>> I believe my development environment was on 1.3.0. That might > > > > > > > >>> be > > > > > > > >>> something to look at, although it seems that probably it's a > > > > > > > >>> very > > > > > > > >>> small overhead, do you have any metrics that would give some > > > > > > > >>> evidence > > > > > > > >>> as to how much overhead is "offline precompilation" adding? > > > > > > > >>> Thanks > > > > > > > >>> On Feb 18, 2:04 pm, Don Schwarz wrote: > > > > > > > Have you deployed your application with the 1.3.1 SDK? That > > > > > > > release > > > > > > turned > > > > > > > on
[appengine-java] Re: App Engine and Spring slow start up
I am still new to GAE, but could we not push an instance of DispatcherServlet into MemCache or the datastore? Then when the application idles we can pull the instance back out of storage instead of creating a new instance. Is that not what Google is trying to say in their FAQ, "Share expensive initialization between JVMs. For example, put data which is expensive to read or compute into memcache, where it can be quickly read by other JVMs during startup." Maybe I am missing something obvious On Feb 26, 2:50 pm, luijar wrote: > Nope, I am still seeing it. It's quite frustrating. I even tried to > reduceSpringinit time by removing schema validation from the > application context init. But, that does not seem to work. I am > usingSpringannotations and component scanning to autowire my beans, I > wonder if using plain XML configuration will make autowiring faster. > > On Feb 23, 9:14 pm, charming30 wrote: > > > Has the above mentioned "offline precompilatio" in 1.3.1 been able to > > solve your issue, I plan to useSpringon Java for my Business App > > which is complex and could be based on SOA. Kindly let me know if your > > issue was resolved or reduced by using the above fix. > > > On Feb 20, 12:05 am, luijar wrote: > > > > I believe my development environment was on 1.3.0. That might be > > > something to look at, although it seems that probably it's a very > > > small overhead, do you have any metrics that would give some evidence > > > as to how much overhead is "offline precompilation" adding? > > > > Thanks > > > > On Feb 18, 2:04 pm, Don Schwarz wrote: > > > > > Have you deployed your application with the 1.3.1 SDK? That release > > > > turned > > > > on "offline precompilation" by default, which is an optimization that > > > > may > > > > help. > > > > > On Thu, Feb 18, 2010 at 7:59 AM, Alex wrote: > > > > > Hi, > > > > > > It appeared that long init problem is well known for Grails users: > > > > >http://jira.codehaus.org/browse/GRAILSPLUGINS-1736 > > > > > > I wasted couple of weeks to create app I cannot run. Hope that > > > > > SpringSource and Google can solve the issue. > > > > > > On Feb 17, 7:41 pm, Stephan Hartmann wrote: > > > > > > The problem is that the initialization of your app takes longer > > > > > > than 30 > > > > > > seconds. > > > > > > Pinging your app doesn't help when the app is restarted due to > > > > > redeployment > > > > > > or maintenance, or when high traffic demands a second instance. > > > > > > > You should try to reduce your startup time. > > > > > > > regards, > > > > > > Stephan > > > > > > > 2010/2/17 luijar > > > > > > > > Great, all of our projects areSpringenabled lol. But I guess it's > > > > > > > good that we are not the only ones seeing this, hopefully it gets > > > > > > > a > > > > > > > little more visibility. We have a cron job (1 min) that tries to > > > > > > > keep > > > > > > > our application alive by hitting a URL, but it does not do a very > > > > > > > good > > > > > > > job. It's frustrating and we don't even have access to the 500 > > > > > > > page to > > > > > > > tell the user to retry or go somewhere else. > > > > > > > > On Feb 17, 11:21 am, oth wrote: > > > > > > > > Yes we have seen this problem a lot. Per our tests, an > > > > > > > > application > > > > > > > > becomes idle after a minute of non activity. So, the unfortunate > > > > > > > > reality is that you need to keep your app alive by simulating > > > > > activity > > > > > > > > on it. Or go the nonSpringroute. > > > > > > > > > Thanks > > > > > > > > > On Feb 16, 4:14 pm, luijar wrote: > > > > > > > > > > Hello Google App Engine forum, > > > > > > > > > > We have been seeing ever since we deployed our applications > > > > > > > > > (currently 3 of them) that when our application instances > > > > > > > > > become > > > > > idle > > > > > > > > > (they have not been hit for x amount of seconds) subsequent > > > > > requests > > > > > > > > > return with a 500 response. Logs show a hard deadline exceeded > > > > > error > > > > > > > > > > com.google.apphosting.runtime.HardDeadlineExceededError: This > > > > > request > > > > > > > > > (32306ebe63b71ab0) started at 2010/02/12 20:39:11.984 UTC and > > > > > > > > > was > > > > > > > > > still executing at 2010/02/12 20:39:41.225 UTC. > > > > > > > > > at > > > > > > com.google.appengine.runtime.Request.process-32306ebe63b71ab0(Request.java) > > > > > > > > > > And the first line of the log message has the following : > > > > > > > > > > 02-12 12:39PM 14.088 > > > > > > > > > > javax.servlet.ServletContext log: InitializingSpringroot > > > > > > > > > WebApplicationContext > > > > > > > > > > Question: > > > > > > > > > Has anyone else seen this behavior? How long does it take for > > > > > > > > > an > > > > > > > > > application instance to become idle? > > > > > > > > > > Thanks > > > > > > > > -- > > > > > > > You received this message because you are subscribed to the Google > > > > >
[appengine-java] Re: App Engine and Spring slow start up
... humm, it sounds like an idea. But I am not sure it works. I learned that even the use of JDO is slowing down the start up. So I imagine if there was a way to optimize that with the datastore they would have done it? How would you want to put this in place? With a filter? On Apr 25, 5:38 am, tazdevil78 wrote: > I am still new to GAE, but could we not push an instance of > DispatcherServlet into MemCache or the datastore? > > Then when the application idles we can pull the instance back out of > storage instead of creating a new instance. > > Is that not what Google is trying to say in their FAQ, "Share > expensive initialization between JVMs. For example, put data which is > expensive to read or compute into memcache, where it can be quickly > read by other JVMs during startup." > > Maybe I am missing something obvious > > On Feb 26, 2:50 pm, luijar wrote: > > > > > > > Nope, I am still seeing it. It's quite frustrating. I even tried to > > reduceSpringinit time by removing schema validation from the > > application context init. But, that does not seem to work. I am > > usingSpringannotations and component scanning to autowire my beans, I > > wonder if using plain XML configuration will make autowiring faster. > > > On Feb 23, 9:14 pm, charming30 wrote: > > > > Has the above mentioned "offline precompilatio" in 1.3.1 been able to > > > solve your issue, I plan to useSpringon Java for my Business App > > > which is complex and could be based on SOA. Kindly let me know if your > > > issue was resolved or reduced by using the above fix. > > > > On Feb 20, 12:05 am, luijar wrote: > > > > > I believe my development environment was on 1.3.0. That might be > > > > something to look at, although it seems that probably it's a very > > > > small overhead, do you have any metrics that would give some evidence > > > > as to how much overhead is "offline precompilation" adding? > > > > > Thanks > > > > > On Feb 18, 2:04 pm, Don Schwarz wrote: > > > > > > Have you deployed your application with the 1.3.1 SDK? That release > > > > > turned > > > > > on "offline precompilation" by default, which is an optimization that > > > > > may > > > > > help. > > > > > > On Thu, Feb 18, 2010 at 7:59 AM, Alex wrote: > > > > > > Hi, > > > > > > > It appeared that long init problem is well known for Grails users: > > > > > >http://jira.codehaus.org/browse/GRAILSPLUGINS-1736 > > > > > > > I wasted couple of weeks to create app I cannot run. Hope that > > > > > > SpringSource and Google can solve the issue. > > > > > > > On Feb 17, 7:41 pm, Stephan Hartmann wrote: > > > > > > > The problem is that the initialization of your app takes longer > > > > > > > than 30 > > > > > > > seconds. > > > > > > > Pinging your app doesn't help when the app is restarted due to > > > > > > redeployment > > > > > > > or maintenance, or when high traffic demands a second instance. > > > > > > > > You should try to reduce your startup time. > > > > > > > > regards, > > > > > > > Stephan > > > > > > > > 2010/2/17 luijar > > > > > > > > > Great, all of our projects areSpringenabled lol. But I guess > > > > > > > > it's > > > > > > > > good that we are not the only ones seeing this, hopefully it > > > > > > > > gets a > > > > > > > > little more visibility. We have a cron job (1 min) that tries > > > > > > > > to keep > > > > > > > > our application alive by hitting a URL, but it does not do a > > > > > > > > very good > > > > > > > > job. It's frustrating and we don't even have access to the 500 > > > > > > > > page to > > > > > > > > tell the user to retry or go somewhere else. > > > > > > > > > On Feb 17, 11:21 am, oth wrote: > > > > > > > > > Yes we have seen this problem a lot. Per our tests, an > > > > > > > > > application > > > > > > > > > becomes idle after a minute of non activity. So, the > > > > > > > > > unfortunate > > > > > > > > > reality is that you need to keep your app alive by simulating > > > > > > activity > > > > > > > > > on it. Or go the nonSpringroute. > > > > > > > > > > Thanks > > > > > > > > > > On Feb 16, 4:14 pm, luijar wrote: > > > > > > > > > > > Hello Google App Engine forum, > > > > > > > > > > > We have been seeing ever since we deployed our > > > > > > > > > > applications > > > > > > > > > > (currently 3 of them) that when our application instances > > > > > > > > > > become > > > > > > idle > > > > > > > > > > (they have not been hit for x amount of seconds) subsequent > > > > > > requests > > > > > > > > > > return with a 500 response. Logs show a hard deadline > > > > > > > > > > exceeded > > > > > > error > > > > > > > > > > > com.google.apphosting.runtime.HardDeadlineExceededError: > > > > > > > > > > This > > > > > > request > > > > > > > > > > (32306ebe63b71ab0) started at 2010/02/12 20:39:11.984 UTC > > > > > > > > > > and was > > > > > > > > > > still executing at 2010/02/12 20:39:41.225 UTC. > > > > > > > > > > at > > > > > > > com.google.appengine.runtime.Request.proc
[appengine-java] Re: App Engine and Spring slow start up
I was thinking filter, but I landed on this instead. Write an HttpServlet implementation that wraps DispatcherServlet. This wrapper will have an instance variable that holds a reference to a DispatcherServlet. If the variable is empty then the wrapper goes and pulls an instance of DispatcherServlet out of memcache, and then just acts as a pass through for all requests. With the first ever request the DispatcherServlet along with the whole application framework is built and pushed into memcache by the wrapper. When the next JVM is spun up, whether from being idle or to scale up, the only thing that gets initialized is this lightweight wrapper instance. The DispatcherServlet along with the whole application framework is sitting in memcache the whole time and doens't have to be rebuilt every time. The wrapper will add a little more overhead to each request, but the offset may be worth it, especially for low traffic sites that are getting idled. The issue that I have not resolved is whether the DispatcherServlet will fit in memcache with the 1 meg limit. I have no idea how big my DispatcherServlet actually is with the whole framework and all my beans. If it is too big for mamcache then blob store or data store may be alternatives. If JDO takes too long to init then this wrapper servlet could bypass that and just use the low level API just to pull this one entity. That should have less overhead. class WrapServlet implements HttpServlet { DispatcherServlet disp; Cache cache; public response service(request, response) { if (disp == null) { disp = cache.get(dispKey); if (disp == null) { disp = new DispatcherServlet(); cache.put(dispKey, disp); } } return disp.service(request); } } On Apr 26, 5:55 am, Toby wrote: > ... humm, it sounds like an idea. But I am not sure it works. I > learned that even the use of JDO is slowing down thestartup. So I > imagine if there was a way to optimize that with the datastore they > would have done it? > How would you want to put this in place? With a filter? > > On Apr 25, 5:38 am, tazdevil78 wrote: > > > > > I am still new to GAE, but could we not push an instance of > > DispatcherServlet into MemCache or the datastore? > > > Then when the application idles we can pull the instance back out of > > storage instead of creating a new instance. > > > Is that not what Google is trying to say in their FAQ, "Share > > expensive initialization between JVMs. For example, put data which is > > expensive to read or compute into memcache, where it can be quickly > > read by other JVMs during startup." > > > Maybe I am missing something obvious > > > On Feb 26, 2:50 pm, luijar wrote: > > > > Nope, I am still seeing it. It's quite frustrating. I even tried to > > > reduceSpringinit time by removing schema validation from the > > > application context init. But, that does not seem to work. I am > > > usingSpringannotations and component scanning to autowire my beans, I > > > wonder if using plain XML configuration will make autowiring faster. > > > > On Feb 23, 9:14 pm, charming30 wrote: > > > > > Has the above mentioned "offline precompilatio" in 1.3.1 been able to > > > > solve your issue, I plan to useSpringon Java for my Business App > > > > which is complex and could be based on SOA. Kindly let me know if your > > > > issue was resolved or reduced by using the above fix. > > > > > On Feb 20, 12:05 am, luijar wrote: > > > > > > I believe my development environment was on 1.3.0. That might be > > > > > something to look at, although it seems that probably it's a very > > > > > small overhead, do you have any metrics that would give some evidence > > > > > as to how much overhead is "offline precompilation" adding? > > > > > > Thanks > > > > > > On Feb 18, 2:04 pm, Don Schwarz wrote: > > > > > > > Have you deployed your application with the 1.3.1 SDK? That > > > > > > release turned > > > > > > on "offline precompilation" by default, which is an optimization > > > > > > that may > > > > > > help. > > > > > > > On Thu, Feb 18, 2010 at 7:59 AM, Alex wrote: > > > > > > > Hi, > > > > > > > > It appeared that long init problem is well known for Grails users: > > > > > > >http://jira.codehaus.org/browse/GRAILSPLUGINS-1736 > > > > > > > > I wasted couple of weeks to create app I cannot run. Hope that > > > > > > > SpringSource and Google can solve the issue. > > > > > > > > On Feb 17, 7:41 pm, Stephan Hartmann wrote: > > > > > > > > The problem is that the initialization of your app takes longer > > > > > > > > than 30 > > > > > > > > seconds. > > > > > > > > Pinging your app doesn't help when the app is restarted due to > > > > > > > redeployment > > > > > > > > or maintenance, or when high traffic demands a second instance. > > > > > > > > > You should
[appengine-java] Re: App Engine and Spring slow start up
We saved between 5-10 seg by switching from XML to Spring 3 java-based configuration: org.springframework.web.context.ContextLoaderListener contextClass org.springframework.web.context.support.AnnotationConfigWebApplicationContext contextConfigLocation com.acme.ApplicationConfig The rest is in the reference guide (search for @Configuration). Other than that, we are waiting for the cold-start issue to be resolved eventually. On Apr 26, 10:04 pm, Baz wrote: > > I do not understand why there is not at least a way to keep the apps > > running. I would even pay for that. > > On deck is the ability to pay for and have reserved a warmed > instance:http://code.google.com/appengine/docs/roadmap.html(3rd bullet) > > Baz > > -- > 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 google-appengine-j...@googlegroups.com. > To unsubscribe from this group, send email to > google-appengine-java+unsubscr...@googlegroups.com. > For more options, visit this group > athttp://groups.google.com/group/google-appengine-java?hl=en. -- 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 google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
Re: [appengine-java] Re: App Engine and Spring slow start up
The problem is that the initialization of your app takes longer than 30 seconds. Pinging your app doesn't help when the app is restarted due to redeployment or maintenance, or when high traffic demands a second instance. You should try to reduce your startup time. regards, Stephan 2010/2/17 luijar > Great, all of our projects are Spring enabled lol. But I guess it's > good that we are not the only ones seeing this, hopefully it gets a > little more visibility. We have a cron job (1 min) that tries to keep > our application alive by hitting a URL, but it does not do a very good > job. It's frustrating and we don't even have access to the 500 page to > tell the user to retry or go somewhere else. > > On Feb 17, 11:21 am, oth wrote: > > Yes we have seen this problem a lot. Per our tests, an application > > becomes idle after a minute of non activity. So, the unfortunate > > reality is that you need to keep your app alive by simulating activity > > on it. Or go the non Spring route. > > > > Thanks > > > > On Feb 16, 4:14 pm, luijar wrote: > > > > > Hello Google App Engine forum, > > > > > We have been seeing ever since we deployed our applications > > > (currently 3 of them) that when our application instances become idle > > > (they have not been hit for x amount of seconds) subsequent requests > > > return with a 500 response. Logs show a hard deadline exceeded error > > > > > com.google.apphosting.runtime.HardDeadlineExceededError: This request > > > (32306ebe63b71ab0) started at 2010/02/12 20:39:11.984 UTC and was > > > still executing at 2010/02/12 20:39:41.225 UTC. > > > at > > > > com.google.appengine.runtime.Request.process-32306ebe63b71ab0(Request.java) > > > > > And the first line of the log message has the following : > > > > > 02-12 12:39PM 14.088 > > > > > javax.servlet.ServletContext log: Initializing Spring root > > > WebApplicationContext > > > > > Question: > > > Has anyone else seen this behavior? How long does it take for an > > > application instance to become idle? > > > > > Thanks > > -- > 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 > google-appengine-j...@googlegroups.com. > To unsubscribe from this group, send email to > google-appengine-java+unsubscr...@googlegroups.com > . > For more options, visit this group at > http://groups.google.com/group/google-appengine-java?hl=en. > > -- 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 google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
Re: [appengine-java] Re: App Engine and Spring slow start up
Have you deployed your application with the 1.3.1 SDK? That release turned on "offline precompilation" by default, which is an optimization that may help. On Thu, Feb 18, 2010 at 7:59 AM, Alex wrote: > Hi, > > It appeared that long init problem is well known for Grails users: > http://jira.codehaus.org/browse/GRAILSPLUGINS-1736 > > I wasted couple of weeks to create app I cannot run. Hope that > SpringSource and Google can solve the issue. > > On Feb 17, 7:41 pm, Stephan Hartmann wrote: > > The problem is that the initialization of your app takes longer than 30 > > seconds. > > Pinging your app doesn't help when the app is restarted due to > redeployment > > or maintenance, or when high traffic demands a second instance. > > > > You should try to reduce your startup time. > > > > regards, > > Stephan > > > > 2010/2/17 luijar > > > > > Great, all of our projects are Spring enabled lol. But I guess it's > > > good that we are not the only ones seeing this, hopefully it gets a > > > little more visibility. We have a cron job (1 min) that tries to keep > > > our application alive by hitting a URL, but it does not do a very good > > > job. It's frustrating and we don't even have access to the 500 page to > > > tell the user to retry or go somewhere else. > > > > > On Feb 17, 11:21 am, oth wrote: > > > > Yes we have seen this problem a lot. Per our tests, an application > > > > becomes idle after a minute of non activity. So, the unfortunate > > > > reality is that you need to keep your app alive by simulating > activity > > > > on it. Or go the non Spring route. > > > > > > Thanks > > > > > > On Feb 16, 4:14 pm, luijar wrote: > > > > > > > Hello Google App Engine forum, > > > > > > > We have been seeing ever since we deployed our applications > > > > > (currently 3 of them) that when our application instances become > idle > > > > > (they have not been hit for x amount of seconds) subsequent > requests > > > > > return with a 500 response. Logs show a hard deadline exceeded > error > > > > > > > com.google.apphosting.runtime.HardDeadlineExceededError: This > request > > > > > (32306ebe63b71ab0) started at 2010/02/12 20:39:11.984 UTC and was > > > > > still executing at 2010/02/12 20:39:41.225 UTC. > > > > > at > > > > > > com.google.appengine.runtime.Request.process-32306ebe63b71ab0(Request.java) > > > > > > > And the first line of the log message has the following : > > > > > > > 02-12 12:39PM 14.088 > > > > > > > javax.servlet.ServletContext log: Initializing Spring root > > > > > WebApplicationContext > > > > > > > Question: > > > > > Has anyone else seen this behavior? How long does it take for an > > > > > application instance to become idle? > > > > > > > Thanks > > > > > -- > > > 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 > > > google-appengine-j...@googlegroups.com. > > > To unsubscribe from this group, send email to > > > google-appengine-java+unsubscr...@googlegroups.com > > > > > > . > > > For more options, visit this group at > > >http://groups.google.com/group/google-appengine-java?hl=en. > > -- > 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 > google-appengine-j...@googlegroups.com. > To unsubscribe from this group, send email to > google-appengine-java+unsubscr...@googlegroups.com > . > For more options, visit this group at > http://groups.google.com/group/google-appengine-java?hl=en. > > -- 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 google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
Re: [appengine-java] Re: App Engine and Spring slow start up
Try using the old way with xml configuration for wiring your beans together. The word on the street is that Spring's component scanning takes a lot of time. luijar wrote: Nope, I am still seeing it. It's quite frustrating. I even tried to reduce Spring init time by removing schema validation from the application context init. But, that does not seem to work. I am using Spring annotations and component scanning to autowire my beans, I wonder if using plain XML configuration will make autowiring faster. On Feb 23, 9:14 pm, charming30 wrote: Has the above mentioned "offline precompilatio" in 1.3.1 been able to solve your issue, I plan to use Spring on Java for my Business App which is complex and could be based on SOA. Kindly let me know if your issue was resolved or reduced by using the above fix. On Feb 20, 12:05 am, luijar wrote: I believe my development environment was on 1.3.0. That might be something to look at, although it seems that probably it's a very small overhead, do you have any metrics that would give some evidence as to how much overhead is "offline precompilation" adding? Thanks On Feb 18, 2:04 pm, Don Schwarz wrote: Have you deployed your application with the 1.3.1 SDK? That release turned on "offline precompilation" by default, which is an optimization that may help. On Thu, Feb 18, 2010 at 7:59 AM, Alex wrote: Hi, It appeared that long init problem is well known for Grails users: http://jira.codehaus.org/browse/GRAILSPLUGINS-1736 I wasted couple of weeks to create app I cannot run. Hope that SpringSource and Google can solve the issue. On Feb 17, 7:41 pm, Stephan Hartmann wrote: The problem is that the initialization of your app takes longer than 30 seconds. Pinging your app doesn't help when the app is restarted due to redeployment or maintenance, or when high traffic demands a second instance. You should try to reduce your startup time. regards, Stephan 2010/2/17 luijar Great, all of our projects areSpringenabled lol. But I guess it's good that we are not the only ones seeing this, hopefully it gets a little more visibility. We have a cron job (1 min) that tries to keep our application alive by hitting a URL, but it does not do a very good job. It's frustrating and we don't even have access to the 500 page to tell the user to retry or go somewhere else. On Feb 17, 11:21 am, oth wrote: Yes we have seen this problem a lot. Per our tests, an application becomes idle after a minute of non activity. So, the unfortunate reality is that you need to keep your app alive by simulating activity on it. Or go the nonSpringroute. Thanks On Feb 16, 4:14 pm, luijar wrote: Hello Google App Engine forum, We have been seeing ever since we deployed our applications (currently 3 of them) that when our application instances become idle (they have not been hit for x amount of seconds) subsequent requests return with a 500 response. Logs show a hard deadline exceeded error com.google.apphosting.runtime.HardDeadlineExceededError: This request (32306ebe63b71ab0) started at 2010/02/12 20:39:11.984 UTC and was still executing at 2010/02/12 20:39:41.225 UTC. at com.google.appengine.runtime.Request.process-32306ebe63b71ab0(Request.java) And the first line of the log message has the following : 02-12 12:39PM 14.088 javax.servlet.ServletContext log: InitializingSpringroot WebApplicationContext Question: Has anyone else seen this behavior? How long does it take for an application instance to become idle? Thanks -- You received this message because you are subscribed to the Google Groups "Google App Engine forJava" group. To post to this group, send email to google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en. -- You received this message because you are subscribed to the Google Groups "Google App Engine forJava" group. To post to this group, send email to google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en. -- 0x2B | ~0x2b -- Hamlet -- 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 google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
Re: [appengine-java] Re: App Engine and Spring slow start up
i got the same problem too, there is no better way to resolve it, i just try to hitting a url with cron job. On Tue, Mar 2, 2010 at 3:50 AM, luijar wrote: > Thanks for the advice, I'll try that. > > On Mar 1, 2:31 pm, Rusty Wright wrote: > > Try using the old way with xml configuration for wiring your beans > together. The word on the street is that Spring's component scanning takes > a lot of time. > > > > > > > > luijar wrote: > > > Nope, I am still seeing it. It's quite frustrating. I even tried to > > > reduce Spring init time by removing schema validation from the > > > application context init. But, that does not seem to work. I am using > > > Spring annotations and component scanning to autowire my beans, I > > > wonder if using plain XML configuration will make autowiring faster. > > > > > On Feb 23, 9:14 pm, charming30 wrote: > > >> Has the above mentioned "offline precompilatio" in 1.3.1 been able to > > >> solve your issue, I plan to use Spring on Java for my Business App > > >> which is complex and could be based on SOA. Kindly let me know if your > > >> issue was resolved or reduced by using the above fix. > > > > >> On Feb 20, 12:05 am, luijar wrote: > > > > >>> I believe my development environment was on 1.3.0. That might be > > >>> something to look at, although it seems that probably it's a very > > >>> small overhead, do you have any metrics that would give some evidence > > >>> as to how much overhead is "offline precompilation" adding? > > >>> Thanks > > >>> On Feb 18, 2:04 pm, Don Schwarz wrote: > > Have you deployed your application with the 1.3.1 SDK? That release > turned > > on "offline precompilation" by default, which is an optimization > that may > > help. > > On Thu, Feb 18, 2010 at 7:59 AM, Alex wrote: > > > Hi, > > > It appeared that long init problem is well known for Grails users: > > >http://jira.codehaus.org/browse/GRAILSPLUGINS-1736 > > > I wasted couple of weeks to create app I cannot run. Hope that > > > SpringSource and Google can solve the issue. > > > On Feb 17, 7:41 pm, Stephan Hartmann wrote: > > >> The problem is that the initialization of your app takes longer > than 30 > > >> seconds. > > >> Pinging your app doesn't help when the app is restarted due to > > > redeployment > > >> or maintenance, or when high traffic demands a second instance. > > >> You should try to reduce your startup time. > > >> regards, > > >> Stephan > > >> 2010/2/17 luijar > > >>> Great, all of our projects areSpringenabled lol. But I guess it's > > >>> good that we are not the only ones seeing this, hopefully it gets > a > > >>> little more visibility. We have a cron job (1 min) that tries to > keep > > >>> our application alive by hitting a URL, but it does not do a very > good > > >>> job. It's frustrating and we don't even have access to the 500 > page to > > >>> tell the user to retry or go somewhere else. > > >>> On Feb 17, 11:21 am, oth wrote: > > Yes we have seen this problem a lot. Per our tests, an > application > > becomes idle after a minute of non activity. So, the unfortunate > > reality is that you need to keep your app alive by simulating > > > activity > > on it. Or go the nonSpringroute. > > Thanks > > On Feb 16, 4:14 pm, luijar wrote: > > > Hello Google App Engine forum, > > > We have been seeing ever since we deployed our applications > > > (currently 3 of them) that when our application instances > become > > > idle > > > (they have not been hit for x amount of seconds) subsequent > > > requests > > > return with a 500 response. Logs show a hard deadline exceeded > > > error > > > com.google.apphosting.runtime.HardDeadlineExceededError: This > > > request > > > (32306ebe63b71ab0) started at 2010/02/12 20:39:11.984 UTC and > was > > > still executing at 2010/02/12 20:39:41.225 UTC. > > > at > > > > com.google.appengine.runtime.Request.process-32306ebe63b71ab0(Request.java) > > > And the first line of the log message has the following : > > > 02-12 12:39PM 14.088 > > > javax.servlet.ServletContext log: InitializingSpringroot > > > WebApplicationContext > > > Question: > > > Has anyone else seen this behavior? How long does it take for > an > > > application instance to become idle? > > > Thanks > > >>> -- > > >>> You received this message because you are subscribed to the > Google > > > Groups > > >>> "Google App Engine forJava" group. > > >>> To post to this group, send email to > > >>> google-appengine-j...@googlegroups.com. > > >>> To unsubscribe from this group, send email to > > >>> google-appengine-java+unsubscr...@googlegroups.com unsubscr...@googlegroups.com> > > > > > > > > >>> .
Re: [appengine-java] Re: App Engine and Spring slow start up
> > I do not understand why there is not at least a way to keep the apps > running. I would even pay for that. On deck is the ability to pay for and have reserved a warmed instance: http://code.google.com/appengine/docs/roadmap.html (3rd bullet) Baz -- 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 google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.