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