

Infinite Scalability with Amazon Web Services? - espadagroup

From a startup junkie, but a non-hacker:<p>Is it possible to build a truly scalable application with all of the Amazon's Web Services?  What would be the biggest problem?  Is it a technical problem, in that Amazon's services just don't cover everything or is it more that we don't have perfect foresight into where the bottle necks will be?
======
sh1mmer
I've heard this question a lot when people ask me about what Yahoo are going
to be offering in the cloud.

A lot of people don't understand the difference between Amazon's and
Google/Microsoft's approach to cloud offerings.

Amazon seem to be providing a lot of infrastructure pieces, from virtulization
to storage and CDN to RDMS. However how you connect those pieces or which you
use it's pretty much up to you.

Google on the other (and Microsoft judging by the current descriptions of
Azure) have provided a platform which guides developers towards good practices
with constraints but is more limited in the possible applications. That said
they won't make your application performs, they'll just make sure it fits in
their scalable architecture.

So the short answer is yes. You can build a truly scalable application on any
or all of these cloud services if you know how. If you know how, though, you
can probably do it without them.

------
vorador
Scalability isn't inherent to Amazon's architecture. It depends of your app. A
poorly written app won't scale.

~~~
jwilliams
Not only that - but certain classes of problem won't scale (linearly).

If you wanted to produce a site that outputs static, immutable, invariant,
fixed content... then yeah, probably would scale (approaching) infinity.

~~~
espadagroup
Ok, that makes sense to me I was always wondering if it was a perfect
foresight problem, which it seems to be rather than a lack of services from
Amazon. However, is it possible to get to the point of scalability where it is
just a hardware issue rather than a restructuring of code issue? Or are the
code methods one would implement to allow such scalability overkill in the
early stages?

------
prakash
There are various levels of Scalabilty, AWS being one of them in a chain.

Hosting > AWS > CDN's like Akamai > building out your data center similar to
google.

AWS is a good start, and if you start doing 100's of Gbps of traffic you
should probably start looking for other options.

As the other HN commenters have mentioned, you have to architect you
application with scalability baked in. Some applications aren't good
candidates for scalable applications such as many 1-1 live streams.

------
cperciva
Right now, I'd say that the biggest limit to scalability with AWS is the lack
of load balancing. They've said that this will be coming in the future; but
it's not here yet.

~~~
wmf
You can do software load balancing, but you'd eventually be bottlenecked by
the 1 Gbps per instance limit. You could use round-robin DNS for multiple
load-balancer instances, but that feels a little kludgy.

Lack of geographical distribution and impossibility of decent HA might kick in
before you had to worry about load balancing gigabits of traffic, though.

~~~
cmer
Just an idea, if the 1 Gbps limit is a problem for your load balancer, you
could just start serving static files through a CDN, therefore freeing up
quite a bit of bandwidth for dynamically generated stuff.

It's a good problem to have, though!

