Scale problem. How to handle traffic peak when adverting product?

89 views
Skip to first unread message

max7

unread,
Jan 18, 2013, 3:38:03 PM1/18/13
to google-a...@googlegroups.com
I am going to advertise my mobile app in social network group with 3 million subscribers.
My app is available on iOS and Android.

QR code and link from post will direct to my URL that would be redirected to AppStore or Google Play based on Agent header.

I believe 50-90% clicks will happen first hour or even 10 minutes when post would appear in news line in social network.

I do not know how many people will click. But more people click more I earn and I should be ready to handle it.

I guess it could be 200.000 clicks.

But in first 10-60 seconds it could be 5000 or 15000 clicks per minute 
with max 1000 clicks a second. (worst case)

I do not know what server and technology to select.

Will AppEngine suit my needs?

I have AppEngine Java experience and I guess even with one hot JVM it would not scale.
May be same issue is with Go as it requires 1 process per client.

But I do not have experience with appengine+python. will it be able to scale fast when needed?

The problem I do not know how many instannces I need.

If I knew that I need 1 or 10 then I could get it with Amazon Ec2 or other cloud provider.

Please advise, Thanks, 
Max

Kaan Soral

unread,
Jan 19, 2013, 2:24:08 PM1/19/13
to google-a...@googlegroups.com
Realistically speaking you needn't worry.

200.000 clicks is worth 20.000$'s at least, If you are talking about a facebook page with 3M likes, you are likely going to get 1-2k clicks, at best case.

So I'm pretty sure any decent hosting can handle your traffic.

But let's assume it will be as you say, AppEngine would be your best choice, it can handle the traffic easily without any effort (enable billing) and I'm sure you will only pay a couple of $'s. 200.000 views is nothing

Igor Kharin

unread,
Jan 20, 2013, 3:04:35 AM1/20/13
to google-a...@googlegroups.com
Hello Max,

Definitely the best option is to stick with AppEngine (zero setup + scaling), then I'd need a paid app with 5+ resident instances as fallback and some big "max idle instances" to let them sit there running for the time of campaign.

We're pretty much left with just Python or Go, because of long Java's startup times. From my expirience Python and Go performance on AppEngine is somewhat comparable: 150-800ms of startup time with each instance able to handle 50-80 requests per second (can't say where your "Go requires 1 process per client" come from).

Plus you can take advantage of the edge-cache and get some percentage of requests for free. Not much, since we'd need to set "Vary: User-Agent", but well, for free.

--
You received this message because you are subscribed to the Google Groups "Google App Engine" group.
To view this discussion on the web visit https://groups.google.com/d/msg/google-appengine/-/iXUO5kPHGyMJ.
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.

Reply all
Reply to author
Forward
0 new messages