Quantified Price Reduction through Optimizations

129 views
Skip to first unread message

Brandon Wirtz

unread,
Nov 26, 2011, 4:49:12 AM11/26/11
to google-a...@googlegroups.com

The Top bill is post optimizations. The bottom bill is pre.  You can see that the top bill has .77 Million writes and the bottom had .36 so the top is more than double the Traffic, (2.53 Gigs out, 1.2 Gigs out)  but the price is less than half.  $3.05 vs $7.79.   That’s 5x savings.  I believe edge cache is free, and we got about 50% cache hits on that, so by getting everything lined up we are at 1/10th the price of pre-optimizations.

 

Can Every app achieve these numbers? Probably not.  But just remember that I’m not a super dumb guy, likely my code didn’t suck too hard to begin with, and that if I can save 90% on my bill you should be able to save some on yours by doing the Cache Headers, The Move to 2.7 and Thread Safe.  (unless you are on java the I have no clue what optimizations you do after getting your cache headers right)

 

I suspect I can get the price even lower through more optimizations to my DataStore write operations. I am shooting for another 50%.

 

Counting cache hits, serving 5Gig for $3 still makes CDNInABox.com more expensive than large solutions for large sites, but $.60 a gig is not bad for small and medium especially since there is no 80/20 on the peak calculation.

 

 

Resource

Used

Free

Billable

Charge

Frontend Instance Hours 
$0.04/Hour

77.14

28.00

49.14

$1.97

Discounted Instance Hour 
$0.025/Hour

0.00

0.00

0.00

$0.00

Backend Instance Hours 
$0.08/Hour

0.00

9.00

0.00

$0.00

Datastore Storage 
$0.008/GByte-day

18.62

1.00

17.62

$0.15

Taskqueue Storage 
$0.008/GByte-day

0.00

0.49

0.00

$0.00

Blobstore Storage 
$0.0043/GByte-day

0.00

5.00

0.00

$0.00

Datastore Writes 
$1.00/Million Ops

0.77

0.05

0.72

$0.72

Datastore Reads 
$0.70/Million Ops

0.08

0.05

0.03

$0.02

Small Datastore Operations 
$0.10/Million Ops

0.00

0.05

0.00

$0.00

Bandwidth Out 
$0.12/GByte

2.53

1.00

1.53

$0.19

Emails 
$0.01/100 Recipients

0.00

1.00

0.00

$0.00

XMPP Stanzas 
$0.10/100K Stanzas

0.00

0.10

0.00

$0.00

Opened Channels 
$0.01/100 Opens

0.00

1.00

0.00

$0.00

Total:

$3.05

 

 

 

 

Resource

Used

Free

Billable

Charge

Frontend Instance Hours 
$0.04/Hour

210.93

28.00

182.93

$7.32

Discounted Instance Hour 
$0.025/Hour

0.00

0.00

0.00

$0.00

Backend Instance Hours 
$0.08/Hour

0.00

9.00

0.00

$0.00

Datastore Storage 
$0.008/GByte-day

16.46

1.00

15.46

$0.13

Taskqueue Storage 
$0.008/GByte-day

0.00

0.49

0.00

$0.00

Blobstore Storage 
$0.0043/GByte-day

0.00

5.00

0.00

$0.00

Datastore Writes 
$1.00/Million Ops

0.36

0.05

0.31

$0.31

Datastore Reads 
$0.70/Million Ops

0.05

0.05

0.00

$0.00

Small Datastore Operations 
$0.10/Million Ops

0.00

0.05

0.00

$0.00

Bandwidth Out 
$0.12/GByte

1.20

1.00

0.20

$0.03

Emails 
$0.01/100 Recipients

0.00

1.00

0.00

$0.00

XMPP Stanzas 
$0.10/100K Stanzas

0.00

0.10

0.00

$0.00

Opened Channels 
$0.01/100 Opens

0.00

1.00

0.00

$0.00

Total:

$7.79

 

Joshua Smith

unread,
Nov 26, 2011, 9:06:23 AM11/26/11
to google-a...@googlegroups.com
Did you also get a performance improvement for your clients, given that this is coming from Google's edge cache (which I presume is exceedingly parallel)?

Google analytics has a cool "page load time" stat, that works on enough browsers to get a good sample.

-Joshua

-- 
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-a...@googlegroups.com.
To unsubscribe from this group, send email to google-appengi...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.

Brandon Wirtz

unread,
Nov 26, 2011, 5:10:27 PM11/26/11
to google-a...@googlegroups.com

Yes, The interesting thing about GAE is everything you do in code to make things cheaper makes things faster.  But Yes I posted my XYHD.tv in the 97th percentile of load times results.  Clients are getting the new upgrades over the course of this week.

Amethi

unread,
Nov 26, 2011, 5:42:04 AM11/26/11
to Google App Engine
Hi Brandon, thanks for sharing, the results are exceptional.

I'm new here, so forgive me if I'm missing something obvious, but is
some some earlier material explaining what you've done?

Jay

Brandon Wirtz

unread,
Nov 26, 2011, 5:24:38 PM11/26/11
to google-a...@googlegroups.com
Yes, unfortunately it is spread out over quite a few posts.

Basically I moved from Python 2.5 to Python 2.7. Did the work to be thread
safe. And optimized how I use Instance Memory, MemCache, And DataStore.
Along with Fixing my Cache Headers.

This post was less of a "How To" and more of a "Chances are GAE has given
you the tools to lower the price of your App enough to offset most of the
change in post beta pricing"

-Brandon

-----Original Message-----
From: google-a...@googlegroups.com
[mailto:google-a...@googlegroups.com] On Behalf Of Amethi
Sent: Saturday, November 26, 2011 2:42 AM
To: Google App Engine
Subject: [google-appengine] Re: Quantified Price Reduction through
Optimizations

Jay

--

Brandon Wirtz

unread,
Nov 27, 2011, 5:03:56 AM11/27/11
to google-a...@googlegroups.com
Tuning the instance settings I was able to get this down to $1.35 on the
same volume numbers as the $3 was before. This brings pricing to 25% more
than it was when we were in beta. When Half price instances end next month
we'll be at 2.5x pre-beta well with in our expectations for pricing.
Reply all
Reply to author
Forward
0 new messages