What is Auto Scaling? How does it work? Is there anything better?
What is auto scaling and how does it work?
Auto scaling really is nothing tricky, it is really simple actually. Most companies have an algorithm they built that monitors Server Load, RAM usage, Bandwidth Usage, System Storage Space and more. In turn, gather the data and have a computer process if the system has too much stress, if the algorithm decides that the server is handling too much on its own at that specific time it opens a new server and distributes the server load. If the computer notices later that the new server added to the persons (Server Pool) is working fine, it will leave it as is, if the computer notices that one of the server(s) are not needed anymore it will put it into hibernation and wait for an increase in the above processes again. Very simple process and saves everyone time and money.
There are only a few companies that offer auto scaling to the public a few are listed bellow (I know there are more, but Amazon and Rackspace dominate the area.):
- Amazon Web Services (AWS)
These are a few large companies that use autoscaling:
Amazon Web Services (AWS) Pros and Cons
Amazons System seems to be fairly cheap, and has great hardware to support them, along with great customer service.
- No starting Costs
- Cheapest System is $0.013/Hour/Server
- Encourages experimentation at the hardware level (Meaing they encorage load/stress tests)
- Whole-zone failures
- Virtual hardware doesn’t last as long as real hardware
- You need to be in more than one zone, and redundant across zones
- Unstable System
- Need to be Tech Savvy or learn the system very well being their console is very intricate
- closeness to hardware
- horizontal scaling — 1 to 50 servers in minutes — can get hardware on-demand (both dedicated servers and cloud hosting)
- vertical scaling — choose from 256MB RAM to 15.5GB RAM for cloud servers. Up to 128 GB for managed instance (you’ll have to do most of OS and installation yourself)
- closeness to user (they have available server parks around the globe)
- nearly half of Fortune 100 hosts with them (from their homepage )
- no own installation and setup of load balancer, operation system or security packages
- server monitoring.
- fixed cost possible
- on-demand pricing — pay for use
- can scale at peak hours, can scale down to a minimum in slow hours (night) and save money. First and foremost, you give your users a better experience
- cheap to get started
- 100% network uptime guarantee
- require some real dollars each month, minimum $11
- a managed 128GB RAM server is cheaper to own yourself.
install and setup ruby, rails and gems your self. (like in-house, but you can easily save the setup for later duplication)
- automate deployment yourself, using capistrano or other. (like in-house)
- ramp up time. first time deployment needs a bit of setup to get going (as in-house). Not too suited for experimentation or fast prototypes, like heroku.
- Rackspace employees may access your servers, no matter how unlikely.(Source: Article)
I am the CEO of Thorbis so I may be a bit biased, we have tried to solve all the problems above with a simple process called “Simplicity”. We want everyone to benefit from lower costs,better performance and help them get rid of the complex and annoying interface that almost makes no sense unless you learn if from the ground up.
We built an overall/admin panel that resembles a regular hosting panel with the focus on websites for your instances, where our system does all the work. You fill in a few things, pay for the system, let it make sure everything runs smoothly.