On Fri, Jul 10, 2009 at 2:54 AM, Anthony Mills<[email protected]> wrote:
>
> Yeah, this is absolutely killing me. Killing me. I'm doing two
> queries, for instance, where there are 50 records coming back each,
> and JSON'ning them up to be sent back to the client. This shouldn't be
> too bad, right? And the query they're for is an = on a list property
> and an order on an ID, property, and it's got its own index even.

Have you tried fetching and discarding the results in a request, to
make sure that the division between API and user time is accurate?
That said, decoding 100 entities will take a noticeable amount of time
more than decoding, say, 10, though I wouldn't expect it to be as high
as you report.


>
> Time: 1410cpu_ms 1368api_cpu_ms
>
> Argh! I even spent a bunch of time porting my app to the Java
> framework to reduce the amount my app's taking up. So as you can see,
> my app is taking 42 ms and the API is taking 1368 ms. Most of which
> it's doing sitting around waiting for the datastore. And seriously, it
> shouldn't be taking 1.368 seconds to do what I'm doing anyway.
>
> Please, can we get billing changed so that time the web server spends
> sitting around waiting for results is not billed to us? After all,
> that isn't really CPU time we're costing Google since it's freely
> available for other processes.

The time the server spends waiting isn't charged for. The CPU time
listed as 'api_cpu_ms' is not the time the webserver is waiting for
responses, it's the time the backend datastore spends processing your
request. This can be higher than actual request time, since a query
may be processed on multiple machines simultaneously. The actual CPU
time charged to your quota is only cpu_ms, which is the sum of API
time and server time - the api_cpu_ms reported is there purely for
information.

-Nick Johnson

>
> Please? :(
>
> Anthony
>
> On Jul 9, 6:27 pm, Alex Popescu <[email protected]>
> wrote:
>> Hi guys,
>>
>> I have a cron op that is fetching some records for an entity and does
>> some processing on them.
>>
>> While checking my app logs I have noticed that for the trivial case
>> when no result is returned (and so there is no additional processing
>> done) this operation is billed constantly with something between
>> 1300ms and 1400ms.
>>
>> This basically tells me that this is the initial cost of a roundtrip
>> to the datastore (plus basic request dispatching; note: the response
>> doesn't have any data).
>>
>> Based on this I can further deduce that on a daily basis the free CPU
>> quota will allow me to run around 18k datastore roundtrips with 0
>> results.
>>
>> How do you comment on this data when compared with the public
>> announcements you've done in the past about the amount of requests an
>> app can serve based only on free quota?
>>
>> ./alex
>> --
>> .w( the_mindstorm )p.
>>   Alexandru Popescu
>>
>> PS: I have argued (and I continue to believe) that billing for CPU
>> time is completely incorrect to app engine customers and that Google
>> should look into some alternative 
>> options:http://themindstorms.blogspot.com/2009/06/open-letter-to-google-app-e...
>
> >
>



-- 
Nick Johnson, App Engine Developer Programs Engineer
Google Ireland Ltd. :: Registered in Dublin, Ireland, Registration
Number: 368047

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