What exactly is Amazon Web Services (AWS)? Not just hosting?

Page 2 - Seeking answers? Join the AnandTech community: where nearly half-a-million members share solutions and discuss the latest tech.

IronWing

No Lifer
Jul 20, 2001
72,332
32,874
136
Homework... due Monday. This is an essay so the OP needs complete paragraphs, please.
 

purbeast0

No Lifer
Sep 13, 2001
53,543
6,368
126
It's a simple question that has not been answered. What is AWS? web hosting? More? OK, give examples please. Why would you need a server farm? What are "services"? Have you ever explained anything to anyone ever? You sound like you live in a bubble
There was a link posted that lists all of the "services" and explains them in details. What more do you want?

You know that little thing called Facebook? Well say you want to add a new friend. When you do that, your browser reaches out to some application server somewhere and does some logic, which is running on that application server, which then in turn hits another database server and adds your friend to the database. Then in turn the database server will return back to the application server with whether it successfully updated the database or not, and then the application server will tell your browser which is on Facebook whether or not it added that friend successfully.

Both of those "servers" are 2 different types of services that AWS offers. One that is a database server, and one that will run web applications.

That's just 2 examples and Facebook doesn't use AWS. That was to try and maybe make it make some sense to you. Facebook may have and maintain their own servers. And AWS offers many other services other than those 2.

Now think you are just a random nub making a website who has to do things like that. Would you rather set up your own 2 physical servers somewhere, install all of the software to make one of them turn into a webapp server and the other into a database server, pay for the bandwidth you need for them, and maintain them yourself, or would you rather pay AWS a monthly fee to have them do all of that shit for you and all you do is the initial set up to hook everything up, then it just works in the "cloud"?
 

ultimatebob

Lifer
Jul 1, 2001
25,134
2,450
126
I use S3 to host attachments on one of my forums. It's super cheap too. It's like pennies for Gigabytes. At least that's what I see from their calculator. I tried RDS to segregate the database to the cloud, but quickly found out the micro instance was slowing down the site and the database wasn't using an encrypted connection which defeats my use of a server Cert for encryption. Amazon even has DNS hosting.

Woah, you can't properly run most databases on just a t2.micro instance! The CPU probably gets pegged at 100% every time you do more than 2 transactions at once! I use t2.small's for dev databases and at least a t2.medium for production ones.
 

GoodEnough

Golden Member
Apr 24, 2011
1,547
19
81
Pur beast, your example sounds like hosting.
How is your Facebook example different than gator host, where you run some web PHP and run mySQL?
 

ultimatebob

Lifer
Jul 1, 2001
25,134
2,450
126
Pur beast, your example sounds like hosting.
How is your Facebook example different than gator host, where you run some web PHP and run mySQL?

It's a matter of scale, mostly. Something like host gator would be a good for a small mom and pop website with limited traffic, but could never handle even 1% of the traffic that a Facebook or Netflix handles. They need clusters of dedicated servers with lots of CPU's, and tons of memory and storage. You either build your own data center for that kind of load, or use a big hosting center like AWS.
 

Viper GTS

Lifer
Oct 13, 1999
38,107
433
136
For someone who has no concept of what a server might be used for beyond 'web hosting' I can see how this could be confusing.

Servers are expensive. Disks are expensive. The secure, reliable place to run them is expensive. Power is expensive. I manage an environment that cost $12 million to build, and has monthly operating expenses of roughly $30,000 (space and power). We signed a 10 year lease when we built it, so that is nearly $4 million in operating cost that we are obligated to pay regardless of what happens to the company or our compute/storage needs.

AWS is a way for a company or an individual to rapidly build an environment (servers, storage, and the connections between them) that is the right size for their current needs, scalable if demand grows (eg your app blows up), with low upfront costs (literally free to start) and little commitment (your app's popularity tanks, you no longer need all that stuff - just power it off and your costs stop).

It can do nearly anything a traditional datacenter build can do - Host web sites, run programs, compute stuff, store data, whatever you need. But you pay by the hour and can change your running footprint dynamically to manage your costs in ways that simply don't exist for buying physical equipment. It takes weeks or months to buy enterprise level gear vs minutes to deploy on AWS because it's already in place waiting to be leased by someone like you.

For most companies now it's the right place to be - You need to have very specific reasons to not run on AWS or similar to justify the massive upfront costs, the ongoing space and power costs, and the expensive manpower to manage a physical datacenter. AWS abstracts all of it into operating expenses which is VERY useful.

Viper GTS
 

GoodEnough

Golden Member
Apr 24, 2011
1,547
19
81
So AWS is just really big hosting?
Still not seeing how it's not just web hosting

If one started a brand new company, would you use AWS to run your internal non-web stuff like email outlook server and your shared network files drive? Those are two servers that aren't just web servers
 

Viper GTS

Lifer
Oct 13, 1999
38,107
433
136
Why are you so hung up on hosting? There is far more to enterprise level compute than hosting.

AWS is just a bunch of CPU, memory, storage, GPU, and networking that you can pay by the hour to do whatever you want. If what you want is to run a really big website you can do that. If what you want is to convert huge quantities of video into every format known to man and then store the results forever you can do that. If you want to do research and need massive CPU and GPU farms to simulate something you can do that.

For things like email there are likely better choices (office 365) but there is no reason you couldn't do that if you wanted to.

Viper GTS
 

purbeast0

No Lifer
Sep 13, 2001
53,543
6,368
126
Pur beast, your example sounds like hosting.
How is your Facebook example different than gator host, where you run some web PHP and run mySQL?
It appears you just don't understand the difference between running a static webpage vs. a web application.

You can't just "host" a website like Facebook without running an application server in the background. It's doing a lot more stuff than just downloading html/js files and rendering them to the browser. There is actual code running on another server that you are hitting that is doing stuff. And then there is another database server being ran that is where all the data is going to/from then routed through the application server to your browser.

A lot of simple webhosts have (at least used to have) cpanel installed which had some of this stuff built into it, like simple sql databases and what not. But again, this is for simple stuff. "Real" sites with a lot of stuff going on need a lot more than that going on.

And again, this is 2 of the many services that AWS does. They were just examples. Another example would be multiplayer online gaming. There are services that do things like that. I've used Gamesparks on a game I worked on. Right now I worked with another cofounder on the backend of our mobile application and it's running on a node server being hosted on AWS. We're not usiing AWS for database though, we're using mongolabs.
 

purbeast0

No Lifer
Sep 13, 2001
53,543
6,368
126
So AWS is just really big hosting?
Still not seeing how it's not just web hosting

If one started a brand new company, would you use AWS to run your internal non-web stuff like email outlook server and your shared network files drive? Those are two servers that aren't just web servers
All "web hosting" is is basically bandwidth + storage + a webserver. That's it. Sometimes they have applications you can install like wordpress, joomla, or whatever else.

EDIT:

Basically when running a big web app/site (again, just using Facebook or something of that size as an example), you will use "web hosting" to serve the web application which would be downloading the files you view when browsing a website. Then when you hit certain code in those files, it then goes and hits the "web application server" which is (can be and usually is) somewhere else that is unrelated to the place the "web hosting" is going on. And then if your "web application server" has a database that it uses, the "database server" is typically another server somewhere else. So in that case, you have 3 "services" working together to create one web site/application you are using - web hosting, web application server, and a database server.

Then on top of that, you want to be able to scale it as someone else mentioned. Like say you have 2 servers running and you have 100 typical users and that maxes our your server performance. Then say all of a sudden you have 1000 users. Well if you're still only using 2 servers, your site is going to basically come to a crawl and die because it has too little resources for everyone trying to access it. AWS has things that will automatically scale for you so in that case, it would give you 18 more servers so that your typical ratio of 50/1 users/servers that you need to make the site run smoothly. And all of this just happens "magically" without you having to do anything.

Then you have things like load balancers that will direct traffic to these different servers based on the traffic going to the servers so that the CPU processes are equally distributed.

And again, this is only a handful out of many things that AWS offers.
 
Last edited:

John Connor

Lifer
Nov 30, 2012
22,757
618
121
Woah, you can't properly run most databases on just a t2.micro instance! The CPU probably gets pegged at 100% every time you do more than 2 transactions at once! I use t2.small's for dev databases and at least a t2.medium for production ones.


Yeah, I figured as much, but apparently that was the only server in the free tier.
 

core2slow

Senior member
Mar 7, 2008
774
20
81
It's a PaaS (platform as a service). Complete infrastructure solution for your business through the cloud.
 

DaveSimmons

Elite Member
Aug 12, 2001
40,730
670
126
This might help (... with the homework? ;) )

When you sign up for "hosting" you get one spot on one shared sever. That single server might have anywhere from 0 - 1,000+ other people's "hosting" running on it.

If your website got featured on Fox News and 1 million people tried to view it, that poor little server would curl up and die.

One of Amazon Web Services services "EC2" (Elastic Compute Cloud). You set up a "server image" that in simple terms is a disk full of your website stuff. The "elastic" part is that Amazon can now run 10,000 copies of that image on different servers and so 100 million people view your site without it crashing. The next day you get a "hosting" bill for $10,000 :) . The elastic part is that you were only running 1 server, then you were running 10,000, then after the story was old news it went back down to 1 again. Regular hosting can't scale up and down like that.

A+ !
 

GoodEnough

Golden Member
Apr 24, 2011
1,547
19
81
It appears you just don't understand the difference between running a static webpage vs. a web application.
You can't just "host" a website like Facebook without running an application server in the background. It's doing a lot more stuff than just downloading html/js files and rendering them to the browser. .

I understand the difference. I am not talking about static HTML.
You do not need an application server to do dynamic web sites either.
For small web sites, the server side script just does all the SQL calls and whatever calculation logic required, and then builds up the dynamic HTML snippets and serves that. All in one place.
I've not been involved with large scale websites, so I just consider the webserver the same as the "application server".
 

purbeast0

No Lifer
Sep 13, 2001
53,543
6,368
126
I understand the difference. I am not talking about static HTML.
You do not need an application server to do dynamic web sites either.
For small web sites, the server side script just does all the SQL calls and whatever calculation logic required, and then builds up the dynamic HTML snippets and serves that. All in one place.
I've not been involved with large scale websites, so I just consider the webserver the same as the "application server".
Well take out "web application" and fill it in with mobile application. I'll go back to the FB example. Say you are using Facebooks mobile application. You still need to make queries and shit and pull data from somewhere. That is the application server that is hit when you make these calls. In the mobile app there is no webserverer. And both the website and mobile app both hit the same server and share the same code/logic.

The bolded is the problem - they aren't the same. Webservers serve up web pages and files. Sure they can do some of those small queries and what not on the server side, but you aren't going to be doing any hardcore computational stuff on your webserver That could potentially slow down everyone trying to hit your website. Web servers doing a lot of logic is a thing of the past now that websites have gotten a lot more complex as far as what they are doing, hence the term web application. Sure Facebook is an actual website, but it's really way more of a web application under the hood. Same with things like Paypal, Ebay, etc.
 

GoodEnough

Golden Member
Apr 24, 2011
1,547
19
81
Got it, that makes sense. I've only done hobby websites for myself and a few users so that is the source of my blind spot for large scale architecture.
 

core2slow

Senior member
Mar 7, 2008
774
20
81
Just think of it as a virtual datacenter, OP, not just "hosting." Which begs the question, do you know what a datacenter entails? Do you know what it actually does in terms of running an enterprise business?

I think the problem here is that you're not familiar with the latter so it's hard for you to conceptualize that an expanding business no longer requires the capital expenditures for an on-site or nearby physical datacenter or colocation. Rather than dealing with the logistics of providing hardware, equipments, backups, network solutions, etc, for your growing business by yourself, instead you pay someone else (Amazon) a fee to provide and manage all of that. The biggest plus in AWS' favor is the idea that you don't have to worry about replacing obsolete servers and equipments, you don't have to worry about about your disaster recovery solution, you don't have to worry about maintaining an always-on service (like planning GSLB for an international enterprise). Depending on the types of SLAs (service level agreement) that are needed for your company in accordance with auditing and regulations/securities for your type of business, Amazon will provide you with such assurance.

In short, they do more than just hosting, but provide you with an entire cloud infrastructure for you to build your apps, store your apps, and host your apps all in one place (in layman's terms).
 

baydude

Senior member
Sep 13, 2011
814
80
91
Hosting is just part of it, they offer tons of different services. I'm using them for both hosting and running a backend server using their Elastic Beanstalk and Route 53 services. They also have a database service which is like their own type of noSQL type of db I believe but since it wasn't straight up mongo we opted not to use them.

And that is just 3 of their many services. They probably have like 30 or 40 or maybe more than that. I don't know what the majority of them are for since I don't need them.

What is the advantage of using elastic beanstalk over just installing your own database and all their service you need on EC2?
 

purbeast0

No Lifer
Sep 13, 2001
53,543
6,368
126
What is the advantage of using elastic beanstalk over just installing your own database and all their service you need on EC2?
As already mentioned, the auto-scaling is pretty beneficial. Same when doing a new deployment of the backend there is never any downtime. It spools up a new server and doesn't switch over to the new one until it's already up and running. TBH though I'm pretty new to AWS and I'm not the one on our team handling the dev ops stuff so I don't know the details as much as the other guy does.
 

agent00f

Lifer
Jun 9, 2016
12,203
1,243
86
I don't understand how a free service where you click go and it handles all the frivolous work behind the scenes can be an advantage is even a question.
 

ultimatebob

Lifer
Jul 1, 2001
25,134
2,450
126
I don't understand how a free service where you click go and it handles all the frivolous work behind the scenes can be an advantage is even a question.

I'd sign up for that service if it existed! AWS isn't really free, though, and most of it requires a lot of initial setup.
 

Insomniator

Diamond Member
Oct 23, 2002
6,294
171
106
They can host entire datacenters, replacing the need for a company to maintain/manage their own hardware.

I'm pretty sure my company was looking into this, until they got a quote for a bazillion dollars. Still cheaper to run thing in house (even with everything that comes with).