Dedicated Windows Server Hardware Configuration

Overthere
Overthere used Ask the Experts™
on
I will be hosting a web application on my domain using a dedicated Windows 2008 server.  It will use SQL Server 2008 as the database and I would prefer that on it's own server.  So I want at least 2 dedicated servers - one for the app itself and the second for just the database.  

The application will be a lot of reading/writing from the database.  I was wondering if I have 10,000 users running the app daily, which machine needs to be fastest or should they both be equal?  I hate to spend money where I don't have too.  RAM suggestions are welcome as well.

Any insight is appreciated!
Comment
Watch Question

Do more with

Expert Office
EXPERT OFFICE® is a registered trademark of EXPERTS EXCHANGE®
Datacenter platform engineer Lindows
Commented:
Hi

For the webserver you probably dont need a very fast machine. Single Xeon, 2x 100GB SAS 10K in mirror raid with 16GB.

For database it depends, if a lot off writing is really a lot you might consider a SAN as a base for the db files.

Now 10000 users per day doesnt sound outrageous so i would go for a Dual Xeon, Raid 1+0 setup SAS 10K disks (size depend on your db size now and expected growth in the next 3 to 4 years). DB server are comfortable with lots off ram so i advise to start with 32GB,

HTH

Edit: Oh i hope you are using Windows Server 2008R2 for the OS.....
Greg HejlPrincipal Consultant

Commented:
windows 2008?  Why?  is your app only going to be available for a couple years?  You'll have to refactor it sooner.

For a startup give Azure a try.  no hardware redundancy worries.  You can start small and scale it.

If your app fails to market just shut it down.  if it succeeds you can migrate to any platform from there.

Author

Commented:
Thanks for the info...

App has been around for a few years and is currently running on a Wdos 2008 Server successfully and growth is predicted very soon.  Just wanted insight as to separation of data and app.

Would I be better to go with Windows Server 2012R2?
Announcing the Winners!

The results are in for the 15th Annual Expert Awards! Congratulations to the winners, and thank you to everyone who participated in the nominations. We are so grateful for the valuable contributions experts make on a daily basis. Click to read more about this year’s recipients!

Patrick BogersDatacenter platform engineer Lindows

Commented:
Not really. 2008R2 is supported until 2020, pretty sure you have upgraded the hardware again by then.

Author

Commented:
Exactly what I was looking for.  Thanks!
Brian MurphySenior Information Technology Consultant

Commented:
You commented that the application is a web application but uses SQL.

You stated two dedicated servers but did not specify web or SQL.

If your using SQL and want redundancy then go with a SQL 2008 R2 2-node Cluster.

I'm staying with your request to use Server 2008 although you did not specify SQL version.

I would like to clarify that your web application runs on Internet Information Server or Web Server that is a role with 2008 R2 server.

SQL is an actual installed application and if your application is made available to users I recommend having SQL Servers and Web Servers.

If you have Server 2008 R2 Standard or Enterprise then you can have two physical servers and enable Hyper-V then have 1 SQL instance and 1 web server on HostA and 1 SQL intance and 1 Web instance on Host B.

SQL Clustering requires Microsoft Clustering.

If you want redundancy for IIS it comes down to IIS or data in the virtual directory.

If you code is under a virtual directory you can move that to a cluster drive using Microsoft Clustering and Enabling File Clustering.

Point being IIS on 2008 R2 is a Role and may or may not be an application pool.  If you web content is static then your basically hosting a web virtual directory that corresponds to a physical path on one server unless you move that to a NAS or SAN/ISCI attached drive.

This can happen for physical or virtual instances.

If you have two servers how would you maintain two IIS instances?  You cannot unless you have a Load Balancer.

That web content is assumed to at least require some type of "sticky", use a cookie, or require some type of session state after login.

The way around this is mostly static content and having a single point for the web content on NAS or cluster drive or you must have a Load-Balancer like F5 or Netscaler in front?

SQL is a little easier in that it supports a 2-node clustering without much effort.  Enable Microsoft clustering on two servers, Install SQL on server 1 with prerequisites, install another instance on second server but choose the create 2-node cluster issue.

This is all in context of SQL 2008 R2 SP3.

You have more options with SQL 2012 and 2014.

With two physical servers you can cluster or use load balancing and each has pros and cons.  You cannot use both unless active\active clustering and you still need a load-balancer where most web code - at some given point - requires some type of session retention.  

Last thing you need is a user completing a form and the next HTTP request hits the other server and appears to "start over".  This is session retention or "sticky".

Authentication is another aspect which might be a cookie with session token - one, the other or both.

So it really depends on what is meant by web application.

Do more with

Expert Office
Submit tech questions to Ask the Experts™ at any time to receive solutions, advice, and new ideas from leading industry professionals.

Start 7-Day Free Trial