Hey there

I'm planning to migrate to Python 2.7.

I'm now running on Python2.5. There is one kind of request
(lets call it people-search) that uses A LOT of ram.
>From time to time instances get killed because they exceed
the allowed memory allocation. These requests do a lot of
RPCs. One people search uses about 100mb of ram.

In Python 2.7 I would guess that one instance will handle
many people-searches at the same time, because they
mostly wait for RPCs. That means that an instance
will go out of memory much more often, because every
pending request will use 100mb. You handle 2 at the same
time, an F1 instance dies. I'm afraid that I will end up in a
crash loop pretty soon.

Am I right in my assumption?

Is there a way to limit the amount of people-searches
that one instance handles at the same time?
Like threadsafe:false for a certain handler?

The only solution I see at the moment is to deploy 2 versions
of my app. The main version with threadsafe enabled and
a special version with threadsafe disabled.
The main app would then not handle people-searches directly,
but do a urlfetch to the threadsafe disabled version for
people-searches. This way one instance would always
only do one people-search because threadsafe is disabled.

But it's soooo ugly from a maintenance point of view.
Really ugly.

Any better suggestions?

Cheers,
-Andrin

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to google-appengine@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.

Reply via email to