On Oct 23, 3:02 pm, bugaco <[email protected]> wrote:
> I had a bit weird experience with this...
>
> So I wrote app (http://analytics.bugaco.com) that runs on App Engine.
> Than I looked at the request logs to see how it is running.
> Request logs suggested that I'm using a lot of CPU time on hitting the
> home page, but after that CPU time significantly decreases. It also
> had annoying red flag suggesting that servlet is using excessive
> resources and that I need to optimize it.
> Testing a bit, I noticed that pinging lets app be warm, and I had cron
> doing the pings for a few days; while also noticing that it does not
> do anything useful
>
> Conclusion:
> 1. If log files don't suggest that you are better off pinging people
> would not ping

I'm not sure what you mean here, but we have plans to change the admin
console to explicitly call out loading requests, so you can take that
into account when profiling your application. Until that becomes
available, it's pretty easy for you to detect and log loading requests
yourself.

> 2. It is stupid that google counts warming up your app toward CPU time
> (leading to profiling, that leads to pinging)

A couple of things:

1) CPU time doesn't grow on trees, it comes out of your free or paid
quota. Why should we hide this from you?

2) The number of loading requests your application receives are
inversely proportional to its traffic. If you get more traffic, you'll
receive fewer loading requests. This means it usually doesn't pay to
optimize loading requests, unless you're just trying to reduce user
latency.

> 3. It is very stupid that applications can not denote 'keep this code
> path warm/cache it/or something' that will allow new users not to give
> up on the up until they get first response.

Unfortunately, it takes an inordinate amount of physical hardware to
keep on the order of millions of applications in memory, which is
somewhat counter to free. If our startup optimizations plus your own
optimizations don't satisfy you, then maybe you can voice your opinion
on paying for a warm VM (http://code.google.com/p/googleappengine/
issues/detail?id=2456)?

>
> So, as a conclusion, I think AppEngine is AWESOME. And I also think it
> SUCKS.
> I love SDK, ability to deploy and test and use all the cool things.
> I don't like the idea that it can not serve a (entry)page in 3-5
> seconds as I think that it leaves bad taste in users mouth, and
> consequently bad taste in developers mouth.
>
> Finally, I am not sure I'll use AppEngine for developing other
> applications as I'd rather go with paid hosting that provides some
> level of performance on serving pages. I think Google would win a lot
> of good will if they at least provide quick serving of static
> resources.

Google App Engine already serves static resources without intervening
requests to application VMs. This means that, for example, you could
serve a page that was entirely static content, with a small amount of
JS to ping your VM with an asynchronous dynamic request to wake it up.
That page would be served instantly to the user. You need to ensure
though, that the resources are indeed specified as static content in
your app.yaml or appengine-web.xml.

>
> One may wonder how to do that, and given that they have all those yaml
> files there may be yaml file that specifies a warm static resource.
> This would decrease a need for pinging your app as it would allow user
> to hit entry page, and google to pre-cache app much easier.

--

You received this message because you are subscribed to the Google Groups 
"Google App Engine" 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?hl=en.


Reply via email to