• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 558
  • Last Modified:

Server recommendation for web application, database, etc?

I know this question has been asked many times and the answer is always "it depends", but I'm looking for some guidance on buying a new server for my web application.  Currently I have a PowerEdge 830 (Dell) that seems to run everything fine for 10 users.  I am looking to expand this application to about 500 users and want to upgrade before doing so.  My budget is under $4K.

I am looking at the Dell PowerEdge R710 and hoping that it will run all three components of my web application: Database Server, Apache Web Server, and store files uploaded by the users.  As such, I am thinking to get 6 hard drives in Raid 1 formation ( A: OS, Apache Web Files / B: Database Files / C: User Files (uploaded) ).  

Is it okay to buy a system like this for all three compenents or do I need to buy two "slower/less expensive" servers to seperate the web server and database server?  Other suggestions/solutions?  I'm a Java guy not a hardware guy! :)

System I Am Considering:
Dell PowerEdge R710
2x Intel® Xeon® E5504, 2.0Ghz, 4M Cache, 800MHz Max Mem
6 GB Memory
Windows Server® 2008 R2, Web Edition
6x 160GB 7.2K RPM SATA 3.5" Hot Plug Hard Drive
80GB Microsoft OS Partition Override
Total: Approx $3500
4 Solutions
Mike ThomasConsultantCommented:
I would buy the server you have specced BUT up that RAM by as much as you can afford and then install Vmware ESXi4 (which is free) on it and run seperate virtual machines for your servers to better spread the load.

Being a storage pro, I always gravitate towards the disk.  A few things I see:
 * The dell offers 2 different RAID controllers.  Which one were you thinking of?
 * Gut feeling you have way to much CPU power compared to  IOPs capability.  Your bottleneck will be network+disk, not CPU.  
 * Personally, I would go with SAS RAID1 for the O/S + journals + swap, RAID 10 SATA for database & web content.  Or go RAID6 for database+web content.  It depends on how much traffic you expect and ratio of static to dynamic content.
 * Do you have a baseline?  Say you have a box now that you feel is "good" for 5 users.  Have you run perfmon on it to see what sort of throughput and I/O requests you are getting now, and is your queue depth typically 1 or 0, or is queue depth much higher.  Be specific.

Sebastian TalmonSystem Engineer Datacenter SolutionsCommented:

virtualisation does not spread the load (for the load, it is allmost the same if the applications are running directly on the hardware or in virtual machines)

But virtualisation is a thing you should think of when you are planning a new server structure - the main advantage is, that it removes complexibility in the single virtual server, and if some special application in the web server causes them to hang, the database server is not affected, and due to abstraction from the hardware, a virtual server could be moved onto another hardware if load increases in the next few years without reinstalling anything.

Although the virtualisation system (VMware, HyperV, XEN) is allmost free of charge: as you need windows, you have to see if you have higher costs for your server operating system, with virtualisation you may need a seperate license for each virtual server (some licenses include the right for multiple virtual machines, if you want to go into virtualisation I could search for you)

As MojoTech said: get as much RAM as you can, it increases speed of the overall system.
[Webinar] Kill tickets & tabs using PowerShell

Are you tired of cycling through the same browser tabs everyday to close the same repetitive tickets? In this webinar JumpCloud will show how you can leverage RESTful APIs to build your own PowerShell modules to kill tickets & tabs using the PowerShell command Invoke-RestMethod.

If this is a mission critical production system on a low-end budget, then you might consider getting two units at dell's refurbished site to separate your apache from the database and user files and make sure you keep the spindle sets separate between the functionalities (i.e.: one raid 1 set of two for the os, then the swap and  database and user files) - that will address the network+disk issues a bit as alluded to by dlethe on 03/27/10...also another consideration is stuffing enough ram at it to virtualize - after all, the T and R 710 are desigend for virtualization - hmmmm - which bears in mind what os? apache implies linux base (we use novell's sles either straight up or bound within the NOES funcitonality and XEN vm) - but we also deploy SPS 2008 premium (with/without pdc / workgroup only and then opt for the database / sever functionalities) built upon the hypervisor - and that allows licensing for two servers - either virtualized on the same box (with those extra spindle sets and partitions) or on separate machines... hope this helps and not makes things more complicated!! P.S.: Work backwards in term of the application and application management interfaces' requirements - i.e.: our CF server's J2EE have certain requirements likes/dislikes for running the java across and accessing databases...) - also the Mojo Tech's VMware idea is also in alignment with the virtualization concepts - just consider, though, what happens if a single server were to go down (hosting that vm platform).....petermlang
burtonrhodesAuthor Commented:
Great comments from all.  Let me get some answers and digest and will response asap.  Quick question: Doesn't Windows only allow for 6GB max ram?
Sebastian TalmonSystem Engineer Datacenter SolutionsCommented:
Windows Server 2008 R2 Web Edition supports up to 32 GB of RAM

see also

Featured Post

Upgrade your Question Security!

Your question, your audience. Choose who sees your identity—and your question—with question security.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now