Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

There isn't a difference in performance. It's a price difference because you're guaranteeing Amazon that you will use the instance (and pay for it even if you aren't using it).

With light utilization, you could pay the up-front fee and then never turn on the instance. Yes, Amazon gets your reservation fee, but gets no hourly usage money from you. By choosing heavy utilization, you are saying "Amazon, I'm going to guarantee you that I will pay you $X for this instance over the next (1|3) years." In response, Amazon says "well, if you'll guarantee me that you aren't going to up and move to Linode or shut down for the next (1|3) years, I will give you a discount."

Amazon needs to make sure that it has enough capacity that when a random person wants to launch an instance, there's a machine with the capacity to handle it. That means that Amazon needs to keep a lot of unused capacity around. If you're willing to say, "I guarantee that I will pay for every hour over the next three years" Amazon can give you a discount.

Think of it like a CD at a bank. You're telling the bank, "you don't have to worry about your reserves when it comes to this account since I'm committing to not withdrawing this money for a year." That has advantages to the bank because they don't have to include that account in their planning of how much excess money (capacity) they need to keep around for when people want to withdraw.

Amazon can plan their capacity differently (and more cheaply to them) when you will guarantee that you will keep using/paying for an instance. As such, they're passing the savings on to you. This is a great benefit to a company who has a web server or two and knows that they won't be eliminating their presence. It's also a help to someone like Heroku. While the elastic nature of EC2 allows Heroku to always meet demand for dynos, Heroku could probably plan that they would need at least X instances and then just pay for on-demand instances for spikes in usage.

Heroku is actually a wonderful case for how it helps Amazon. Let's say that Heroku uses 5,000 instances. That's decently sizable. If Heroku left Amazon for whatever reason, Amazon could find itself with hundreds of boxes of excess capacity that they were planning would be used by Heroku. By committing to "heavy utilization", Heroku is telling Amazon "don't worry. We will be on EC2 for the next (1|3) years. When you calculate how many instances might be created/destroyed, those 5,000 instances are safe for the next (1|3) years since we've committed to paying the hourly fee on all of them for that period of time."



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: