Date post: | 01-Dec-2014 |
Category: |
Technology |
Upload: | adilmd |
View: | 7,950 times |
Download: | 2 times |
Start-ups & the Cloud!
Adil MohammedCo-founder
Factors crucial for a startup infrastructure
Advantages of the cloud for Startups(as compared to traditional systems)
• Rapid deployment and configuration• Cost efficiency– Low upfront capital expenditure– Use it as you need it
• Ease of scalability– Scalability & elasticity is key to cloud computing– Many tools available
• Spending less time on infrastructure• Higher degree of reliability
Startups are ‘built to grow’, therefore require agile and scalable systems
• Its all about delivery!• Startups have everything to lose in case of failed delivery• The internet has allowed small startups to ‘act big’ (a user doesn’t know how
small or large a service is by just looking at the startup itself) – however this is only possible through having the supporting infrastructure to act big
• Time to worry about the product• Startups are often a small group of people. Money and time are scarce.
Not having to worry about speed of deployment (setup speed) and scalability is a great (competitive) advantage
• Its what you been waiting for!
Scaling is a good dream as well as an absolute nightmare!
Animoto scaled from 25,000 to 250,000 users in 3 days
• Animoto is an online video mixing utility• Run on Amazon Web Services• Make use of Queues to manage load to their
render servers• 25,000 to 250,000 users in 3 days• At peak, 20,000 new users per hour• 50 to 4000 instances (servers) in 5 days• At peak, 40 new instances (servers) per hour
Info: RightScale Blog, AWS Blog
Animoto scaled from 25,000 to 250,000 users in 3 days
Info: RightScale Blog, AWS Blog
Startups using the cloud
• EnTrip is an online travel utility (currently pre-launch) aimed at streamlining the online travel experience
• Started 6 months ago, running RoR, moved from single dedicated server to AWS in May 2008
• Complex trip model demands high server side processing power & complex database searches put huge load on the DB Server
• We use advanced caching strategies, but realise the need for hardware in order to scale
• Noticed huge performance improvement after switching to computing cloud.
• Ready to scale within our chosen architecture• Using AWS, we are doing what we otherwise could not have done
easily or without large CapEx
Architecture
App Server(EC2 Instance)
App Server(EC2 Instance)
MySQL Master(EC2 Instance)
MySQL Slave(EC2 Instance)
S3 (Data Storage, Backups, Images)
App Server(EC2 Instance)
Load Balancer (Nginx)
App Server(EC2 Instance)
App Server(EC2 Instance)
App Server(EC2 Instance)
MySQL Slave(EC2 Instance)
Application
MySQL Cluster
Email Relay
Other services have entered the cloud computing ecosystem to help manage
your systems
Other services have entered the cloud computing ecosystem to help
manage your systems
• Scalr is open source• Its a redundant self-curing and self-scaling
environment• It works with AWS but the principle is relevant to
cloud computing in general• Scalr is not the only software, there are others
How load is handled dynamically
Control node keeps track of instances
and their roles
load level higher?
Max no of
instance
Start new instance and configure farm
load level Lower?
Terminate one instance and
configure farm
Min instance running?
Yes
Yes
and for the app developers...
and for the app developers...
• Specialised platforms – RoR, Python• Most of them aimed at app developers• Aimed at instant deployment• They take care of the infrastructure
Cloud computing has hugely contributed towards levelling the playing field between startups and
Established online players