Thanks for all your comments. Regarding Python/Java speed, 99% of the runtime is spent iterating in an attempt to converge to some numerical solution . Loops, arithmetic and memory updates. I would guess an interpreted language like Python (am I right?) would be much slower.
About the instance set up time, I agree that if query frequency suddenly rises from 100/sec to 200/sec the system I suggested would stall, but I'm don't think I'm expecting such drastic changes in a small amount of time. Regarding my suggestion on new instance creation, don't I have a say on when and how that happens? Or is it totally up to AppEngine to define when a new instance is created? Can I, for example, have 10 instances that are simply waiting for situations like Keakon described? I'm trying to form some intuitive picture of how GAE works by guessing and hoping to be corrected by someone when/if I'm wrong. Maybe I require a cloud platform that allows tinkering at lower levels? On Nov 28, 9:54 pm, Andy Freeman <[email protected]> wrote: > > Maybe I don't understand something, but why should the 5 second setup > > on a new instance bother me? A new instance should be created when > > other instances are near capacity, and not when they exceed it, right? > > So once initialized it can be "dummy-run" internally and only > > available 5 seconds later while the existing instance continue to take > > care of the incoming queries. > > What makes you think that the request that causes the creation of a > new instance doesn't wait for the creation of said instance? (The > scheme you suggest is plausible, but why do you think that it's how > appengine works?) > > On Nov 28, 9:03 am, Eric <[email protected]> wrote: > > > Thanks for the response. > > > Maybe I don't understand something, but why should the 5 second setup > > on a new instance bother me? A new instance should be created when > > other instances are near capacity, and not when they exceed it, right? > > So once initialized it can be "dummy-run" internally and only > > available 5 seconds later while the existing instance continue to take > > care of the incoming queries. > > > Also, do you think the latency requirements are realistic with GAE? > > That is, in the ordinary case, could the response be consistently > > served back to the querying user with delay of max 3 seconds? > > > On Nov 28, 8:35 am, 风笑雪 <[email protected]> wrote: > > > > The White House hosted an online town hall meeting on GAE with GWT, > > > and received 700 hits per second at its > > > peak.http://google-code-updates.blogspot.com/2009/04/google-developer-prod... > > > > But more than 1000 queries a second is never been tested. > > > > I think Java is not a good choice in your case. When your user > > > suddenly increasing, starting a new Jave instance may cost more than 5 > > > seconds, while Python needs less than 1 second. > > > > 2009/11/27 Eric <[email protected]>: > > > > > Hi, > > > > > I wish to set up a CPU-intensive time-important query service for > > > > users on the internet. > > > > Is GAE with Java the right choice? (as compared to other clouds, or > > > > non-cloud architecture) > > > > Specifically, in terms of: > > > > 1) pricing > > > > 2) latency resulting from slow CPU, JIT compiles, etc.. > > > > 3) latency resulting from communication of processes inside the cloud > > > > (e.g. a queuing process and a calculation process) > > > > 4) latency of communication between cloud and end user > > > > > A usage scenario I am expecting is: > > > > - a typical user sends a query (XML of size around 1K) once every 30 > > > > seconds on average, > > > > - Each query requires a numerical computation of average time 0.2 sec > > > > and max time 1 sec (on a 1 GHz Pentium). The computation requires no > > > > data other than the query itself. > > > > - The delay a user experiences between sending a query and receiving a > > > > response should be on average no more than 2 seconds and in general no > > > > more than 5 seconds. > > > > - A background save to a DB of the response should occur (not time > > > > critical) > > > > - There can be up to 30000 simultaneous users - i.e., on average 1000 > > > > queries a second, each requiring an average 0.2 sec calculation, so > > > > that would necessitate around 200 CPUs. > > > > > Is this feasible on GAE Java? > > > > If so, where can I learn about the correct design methodology for such > > > > a project on GAE? > > > > > If this is the wrong forum to ask this, I'd appreciate redirection. > > > > > Thanks, > > > > > Eric > > > > > -- > > > > > 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 > > > > athttp://groups.google.com/group/google-appengine?hl=en.-Hide quoted > > > > text - > > > - Show quoted text - -- 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.
