Google Cloud Platform Blog
Product updates, customer stories, and tips and tricks on Google Cloud Platform
StarMaker chooses Google App Engine to shine a spotlight on the next big singing sensations
Monday, February 2, 2015
Today’s guest blog comes from Christian F. Howes, Vice President of Engineering for
StarMaker Interactive
, developer of an entertainment platform based on singing and music video apps
.
As indicated by the popularity of singing competition shows on TV, karaoke has gone mainstream. But being on TV isn’t always of interest to the hobbyist singer; sometimes all they want is to feel like the lead singer of their favorite song. That’s why StarMaker was created. We built “
StarMaker: Sing + Video
” as a simple tool that lets people sing along to their tunes of choice. We partnered with the hit reality singing TV show The Voice for our app, “The Voice: On Stage.” Last summer we added video capture capability, which allows fans to create cover videos of their favorite songs and submit them to the show’s casting agents.
In the very early stages of our company, we chose
Google App Engine
because of its promise of infinite scalability. Fans loved the app and we quickly outgrew the free quotas of App Engine, but soon after partnering with The Voice, our downloads really skyrocketed. So many people were using our app that we needed to support four billion minutes of video singing time (that’s over 7400 years worth of songs). For a small company without any system administrators, this was both exciting and terrifying. It meant we needed a very easy-to-manage and robust platform that allowed our small team to support huge amounts of traffic.
Just when we were beginning to worry about scaling to meet the demand of our customers, I found out that our app would be featured in Apple’s App Store. This would bring even more traffic, meaning I’d have to hire a systems administrator and do a lot more hands-on work monitoring and troubleshooting. When I tried to increase our App Engine quotas, I was met with a pleasant surprise – all I needed to do was increase my plan with App Engine. No extra admins needed, no extra time managing server configurations and load balancing – we could just sit back and keep coding while the App Engine team did all the heavy lifting.
As the audience for our apps grew, we continued to rack up reasons why App Engine was the best solution for us. Admittedly, the first bit of code I'd written for StarMaker wasn't the most polished
–
some might call it "bad code"
–
yet, running on App Engine, the app never crashed. By reevaluating how I laid out my data for BigTable and re-writing my query code to take advantage of key queries, memcache, and the
NDB API
, we saw about 10x performance gains, and a significant drop in resource usage.
We see sustained requests for downloads and data around the clock since our users are worldwide, yet there’s been almost no down time in two years, even with occasional bad code. And today, we still don’t have any sys-admins on staff – just engineers who can focus on creating new features (like video capture) instead of worrying about keeping servers up and running. The cost and resource savings we have seen by using App Engine has allowed us to continue growing our business by focusing our skills on building a great product. Specifically, App Engine's automatic scaling feature (of both the compute instances and the datastore) together with the monitoring tools in place have eliminated our need for a dedicated sys-ops staff person. At our current scale, we would need 1-2 full time sys-ops staff on a more traditional hosting system.
Additionally, based on our usage spikes, in a more traditional hosting environment we would need to have enough capacity for about 2.5x our "steady state" traffic. These spikes happen several times a week for us, so we'd almost always be paying for about 2x the capacity than we need at any given time. App Engine's minute-by-minute scaling and billing saves us as much as $1,500-$3,000 USD per month.
App Engine is filled with tools that help make our products more appealing and engaging for users. For instance, task queues allow us to complete non-blocking tasks while responding quickly to client API requests. One such example is sending a notification to alert a friend about a newly shared video. We can quickly queue a task from the API call and the task will be serviced a short while later on another module. This "infrastructure" comes for free with App Engine – we're not spending time managing queues, just writing great code. We're currently in the process of rolling out an integrated notification system. This system will allow our users to subscribe to different types of notifications and choose a delivery method for each type. We support Apple Push Notification Service (APNS), Google Cloud Messaging (GCM), email, and in-app messages – things we could not be doing without a combination of App Engine's task queues and manual scaling modules.
We’re excited about the like-minded community of music lovers we’ve created since we launched StarMaker, and App Engine is helping us to keep that community growing.
- Contributed by Christian F. Howes, Vice President of Engineering, StarMaker Interactive
Free Trial
GCP Blogs
Big Data & Machine Learning
Kubernetes
GCP Japan Blog
Firebase Blog
Apigee Blog
Popular Posts
Understanding Cloud Pricing
World's largest event dataset now publicly available in BigQuery
A look inside Google’s Data Center Networks
Enter the Andromeda zone - Google Cloud Platform’s latest networking stack
New in Google Cloud Storage: auto-delete, regional buckets and faster uploads
Labels
Announcements
193
Big Data & Machine Learning
134
Compute
271
Containers & Kubernetes
92
CRE
27
Customers
107
Developer Tools & Insights
151
Events
38
Infrastructure
44
Management Tools
87
Networking
43
Open
1
Open Source
135
Partners
102
Pricing
28
Security & Identity
85
Solutions
24
Stackdriver
24
Storage & Databases
164
Weekly Roundups
20
Feed
Subscribe by email
Demonstrate your proficiency to design, build and manage solutions on Google Cloud Platform.
Learn More
Technical questions? Check us out on
Stack Overflow
.
Subscribe to
our monthly newsletter
.
Google
on
Follow @googlecloud
Follow
Follow