When are the created idle instances deleted when the traffic is going down? After an amount of time? When the latency is below a certain duration?
Thanks, JM On 5 sep, 15:53, Johan Euphrosine <pro...@google.com> wrote: > The time needed to spin up an instance is mostly dependent on how long it > takes for your application to warm up. > > *You* have to choose what are the reasonable values of Max-Idle-Instances > and Minimum pending latency for your application: > - according to the number of idle instance (currently 150) you are willing > GAE to keep for handling loading spikes (Max-Idle-Instances) > - the amount of user latency you are willing to trade (currently none/very > low) for waiting for an existing instance to be available instead spinning a > new one immediately (Min-Pending-Latency). > > Those are entrepreneurial choices involving cost versus risk strategy that > could not be resolved only with technical advises. > > Hope that helps. > > On Mon, Sep 5, 2011 at 3:38 PM, Andrin von Rechenberg > <and...@miumeet.com>wrote: > > > > > > > Proppy, how long does it take to spin up an instance? > > > What would you say are reasonable values for > > Max-Idle-Instances and minimum pending latency? > > > -Andrin > > > On Mon, Sep 5, 2011 at 2:02 PM, Johan Euphrosine <pro...@google.com>wrote: > > >> HI Andrin, > > >> The default scheduler settings (Automatic) are very aggressive for > >> achieving the instant scalability that you are used to on GAE: > >> - it keeps a lot of idle instances around to be able to scale instantly on > >> traffic spikes > >> - it enforce the minimum pending latency possible for your incoming > >> request > > >> You can alter that behavior by tweaking the Max-Idle-Instances and > >> Min-Pending-Latency in "Application Settings > Performance" as described > >> here: > >> http://code.google.com/appengine/articles/managing-resources.html > > >> Min Pending Latency: Xms will enforce that the scheduler wait at least Xms > >> if all instances are busy before taking the decision to spawn a new > >> instance > >> to handle an incoming request: > >> -> It will maximize usage of existing instances over new instance > >> creation. > > >> Max Idle Instance: N will instruct the scheduler not to keep more that N > >> idle instances around to handle traffic spikes. > >> -> It will enforce that you are not billed for more than (Active Instances > >> + Max Idle Instances). > > >> Note that instances waiting for a RPC are not considered "Idle" but > >> "Active" since, from the point of view of the scheduler, they are currently > >> processing a request. > > >> Once multi-threading is implemented with Python 2.7 the scheduler will be > >> able to make use of these active-waiting instances for handling incoming > >> requests, in the meantime you can use the various async APIs availables to > >> be able to make a better usage of the time waiting for RPCs to complete. > > >> Hope that helps. > > >> On Mon, Sep 5, 2011 at 10:11 AM, Andrin von Rechenberg < > >> andri...@gmail.com> wrote: > > >>> Hi there > > >>> We are running a Python GAE service called MiuMeet. > > >>> The current cost is about $296 per day. In November it will be $600 per > >>> day. > > >>> Most of our cost comes from the Frontend Instance hours. We apparently > >>> need > >>> 4677h per day, thats roughly 200 instances. We peak at around 240 qps. > >>> The > >>> average latency is 800ms / request. 240 * 0.8 => 192. So it seems 200 > >>> instances > >>> is exactly what we need at peak. > > >>> However our instances are only 25% active, see here: > >>>http://bit.ly/pXZH4t > > >>> We need someone to talk to about the new pricing model and what can be > >>> done. > >>> Idle instances will cost us an extra $10k per month. We can't afford > >>> that. > > >>> The biggest problem we see is that it seems that AppEngine instances are > >>> idle > >>> often by design: The datastore is slow you have to wait and idle around, > >>> that's > >>> a fact for us. > > >>> We would be really grateful for any advice. > > >>> -Andrin, Founder of MiuMeet > > >>> PS: Here is our billing comparison > > >>> Resource Used Free Billable Charge *CPU Time:* > >>> $0.10/CPU hour 2,797.15 6.50 2,790.65 $279.07 *Bandwidth Out:* > >>> $0.12/GByte 109.32 1.00 108.32 $13.00 *Bandwidth In:* > >>> $0.10/GByte 30.55 1.00 29.55 $2.96 *Stored Data:* > >>> $0.005/GByte-day 101.13 1.00 100.13 $0.51 *Recipients Emailed:* > >>> $0.10/1000 Emails 0.00 2.00 0.00 $0.00 *High Replication Storage:* > >>> $0.008/GByte-day 109.92 0.50 109.42 $0.88 *Backend Usage:* > >>> Prices<http://code.google.com/appengine/docs/billing.html#Billable_Quota_Uni...> > >>> $0.00 $0.72 $0.00 $0.00 *Always On:* > >>> $0.30/Day No - - $0.00 *Total:* $296.42 > >>> Estimated Charges Under New Pricing > > >>> The charges below are estimates of what you would be paying once App > >>> Engine's new pricing > >>> model<http://www.google.com/enterprise/cloud/appengine/pricing.html> goes > >>> live. The amounts shown below are for your information only, they are not > >>> being charged and therefore do not affect your balance. > > >>> If you would like to optmize your application to reduce your costs in the > >>> future, make sure to read our Optimization > >>> Article<http://code.google.com/appengine/articles/managing-resources.html>. > >>> If you have any additional questions or concerns, please contact us at: > >>> appengine_updated_pric...@google.com. > >>> Frontend Instance Hour costs reflect a 50% price reduction active until > >>> November 20th, 2011. > >>> Resource Used Free Billable Charge *Frontend Instance Hours:* > >>> $0.04/Hour 4,677.04 24.00 4,653.04 $186.13 *Backend Instance Hours:* > >>> $0.08/Hour 0.00 9.00 0.00 $0.00 *Datastore Storage:* > >>> $0.008/GByte-day 109.92 1.00 108.92 $0.88 *Blobstore Storage:* > >>> $0.0057/GByte-day 101.13 5.00 96.13 $0.55 *Datastore Writes:* > >>> $1.00/Million Ops 55.69 0.05 55.64 $55.64 *Datastore Reads:* > >>> $0.70/Million Ops 87.12 0.05 87.07 $60.95 *Small Datastore Operations:* > >>> $0.10/Million Ops 192.77 0.05 192.72 $19.28 *Bandwidth In:* > >>> $0.10/GByte 30.55 1.00 29.55 $2.96 *Bandwidth Out:* > >>> $0.15/GByte 109.32 1.00 108.32 $16.25 *Emails:* > >>> $0.01/100 Messages 0.00 1.00 0.00 $0.00 *XMPP Stanzas:* > >>> $0.01/1000 Stanzas 0.00 1.00 0.00 $0.00 *Opened Channels:* > >>> $0.01/100 Opens 7,180.91 1.00 7,179.91 $71.80 *Total*:* (before clipping > >>> to daily budget) $414.44 > > >>> * Note this total does not take into account the minimum per-application > >>> charge in the new pricing > >>> model<http://www.google.com/enterprise/appengine/appengine_pricing.html> > >>> . > > >>> -- > >>> 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. > > >> -- > >> Johan Euphrosine (proppy) > >> Developer Programs Engineer > >> Google Developer Relations > > >> -- > >> 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. > > -- > Johan Euphrosine (proppy) > Developer Programs Engineer > Google Developer Relations -- 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.