I have not read in details previous posts but would like to share some
figures on this subject.
I agree that setting max idle to automatic is very expensive, in my
case I adjusted the scheduler to get an acceptable balance between
latency and price.

In order to do so, I've downloaded logs from the application and
studied them.
The "pending_ms" tag being important here.

Instances graph:
http://dl.dropbox.com/u/497622/instances.png

I changed the max idle instances from automatic to 20.
Before change:
----------
Out of 214903 studied requests we have:
(from 2011-10-13 09:23:07 to 2011-10-13 09:46:31)
Average ms: 303
Pending requests: 2.4 %
Global Average pending_ms: 45
Pending Average pending_ms: 1896
Loading requests: 0.0
----------


1h after the change:

----------
Out of 270115 studied requests we have:
(from 2011-10-13 11:25:56 to 2011-10-13 11:55:46)
Average ms: 345
Pending requests: 17.3 %
Global Average pending_ms: 90
Pending Average pending_ms: 522
Loading requests: 0.3
----------



So reducing the max idle instances settings had the following impact:
- general latency increase of only 50ms
- but 17% of the requests now wait 500ms before being served

This appears the be acceptable for our application, and the price
reduction is really worth it (from 240 instances down to 60!).
Having an even lower max idle instance setting (10? 5?) would further
increase latency while the price reduction would not be significant
(as we have many instances running).

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