Amount of concurrency / instance is critical for deciding whether to
use AppEngine as a platform.

Although AppEngine has it's disadvantages (vendor lock-in, restricted
architecture, etc),
the key reason to choose AppEngine is scalability.

The datastore scales.
Now we need to focus the other component of scalability:
Does the frontend processing scale?  Does it scale ECONOMICALLY?

We are on AppEngine for scalability, so give us information on what
needs to be done
to get economical, end-to-end scalability.

Is Java more economical than python at scale?
What is the python solution for frontend scalability?
How much better is it than the current python solution and how does it
compare to Java?
Tell us so we can make the tradeoffs for our own situation and
preferences.
It's better for us to know now so we can do our planning with plenty
of lead time and being well informed of what the tradeoffs are.



On May 19, 3:30 am, Dennis <[email protected]> wrote:
> I looked into python multi-threading / multi-processing a bit more,
> especially with your tip that it requires python 2.7.
>
> The python multiprocessing module was introduced in python 
> 2.6http://docs.python.org/library/multiprocessing.htmlhttp://www.ibm.com/developerworks/aix/library/au-multiprocessing/inde...
> so this is probably what will be used for python appengine to get
> concurrency above 1 request / instance.
> This solution copies and spawns processes which are heavier than threads.
> I'm assuming that most of the concurrency will be achieved because processes
> are datastore bound:
> they are just waiting around for the datastore to return a result.
>
> Given this type of solution (or whatever solution is used), some important
> questions are:
>
>    - How many concurrent requests can a single instance handle (for python)?
>     If the process is waiting for the datastore, is the number of processes
>    (and thus concurrency) dependent mainly on the number of processes that can
>    fit in memory?
>    - Will heavy python frameworks (like django) have a lower concurrency
>    ability because they use more memory?  If so, what will their concurrent
>    requests / instance be (for the simplest django app, then we can add in our
>    own app's memory usage)?
>    - For those considering switching to java, what is the estimated
>    concurrent requests / instance for java apps?  Java uses threads instead of
>    processes.

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