Results 1 to 24 of 24
  1. #1

    Need Server Suggestion Please with High Traffic Website

    I currently have a website with high traffic hosted in 1 dedicated server:

    Dual Processor Dual Core Xeon 5130 2.0 GHz Woodcrest
    RAM: 4GB

    Traffic Stats:
    3 million visitors with 16 million dynamic page views monthly
    Alexa rank (might help): 33xx

    Database:
    Reads / Writes: 66% / 34%
    Total buffers per thread: 4.2M

    Running "netstat -n | grep :80 |wc -l"
    3845

    The server load is playing between 2-6 and sometimes reaching 10+ (my php script checks the load and display busy message, limiting access to the database and execution of entire page when load is above 10 so it does not go much above 10)

    Please advise if I need to upgrade to a beefier server or do I need to separate the database server from the web server. Also please advise the specs of the server that I need to use.

  2. #2
    Join Date
    Feb 2004
    Location
    Atlanta, GA
    Posts
    5,627
    You would probably be best served by seperating your web and db loads.

    Have you already gone through the whole caching exercise, query optimization, etc?

  3. #3
    Yes. I have been doing that for quite some time already (it saved me an upgrade for around 6 months) and I think I have already reached the point that I can no longer squeeze more performance benefits code-wise and the traffic keeps on increasing.

    If I use 2 separate servers for web and db, do I need to get 2 identical servers? Or which part do I need to give more for each?

    Thanks for the response

  4. #4
    Database server:

    SA-SCSI hard drives
    8GB RAM
    Kentsfield CPU

    Web Server:

    SATAII hard drives
    4GB RAM
    Kentsfield CPU

  5. #5
    Join Date
    Feb 2004
    Location
    Atlanta, GA
    Posts
    5,627
    Quote Originally Posted by geckofrog View Post
    Database server:

    SA-SCSI hard drives
    8GB RAM
    Kentsfield CPU

    Web Server:

    SATAII hard drives
    4GB RAM
    Kentsfield CPU
    What are your suggestions based upon other than just making blind statements?

    Depending on the size of his DB SAS may be pointless as with 8 or 16GB of ram it could live entirely within memory / cache.

  6. #6
    You may want a cluster, such as:

    1 Database server
    2 Web servers

    AlphaRed offers something like this, and they have very cheap bandwidth, contact them for a quote.

  7. #7
    Thanks for the suggestions. I am thinking on separate servers already.

    So SAS is not required unless my whole database cannot fit to the remaining free space of the DB memory?

    I have also done some reading here and I want to clarify if my understanding is correct:

    Web Server: More CPU cores, higher CPU
    Database Server: More RAM, faster disks unless entire DB can loaded into memory

    Is that right?

  8. #8
    Join Date
    Mar 2008
    Location
    Chicago, IL
    Posts
    331
    rjdavid,
    If you decide on a two web server, one DB server cluster, hardware load balancing would be a great performance option for the web servers.
    Chris Larkin
    Senior Hosting Consultant
    SingleHop Managed Dedicated Servers
    http://singlehop.com

  9. #9
    Join Date
    Feb 2004
    Location
    Atlanta, GA
    Posts
    5,627
    Quote Originally Posted by rjdavid View Post
    Thanks for the suggestions. I am thinking on separate servers already.

    So SAS is not required unless my whole database cannot fit to the remaining free space of the DB memory?

    I have also done some reading here and I want to clarify if my understanding is correct:

    Web Server: More CPU cores, higher CPU
    Database Server: More RAM, faster disks unless entire DB can loaded into memory

    Is that right?

    Yes, no

    People here are just throwing out things they read and repeat on the forums. Your solution needs to be unique to your app and your traffic patterns. What is generating your load? What is driving any I/O wait, is it web activity or is it db activity, what is consuming ram, would you be better serve with two smaller web servers and a hardware load balancer, these are all questions that need to be looked into. Not just making a blind suggestion on a forum

  10. #10
    Quote Originally Posted by RyanD View Post
    What are your suggestions based upon other than just making blind statements?

    Depending on the size of his DB SAS may be pointless as with 8 or 16GB of ram it could live entirely within memory / cache.
    I doubt his database is over 300GB. If it is then he has bigger problems to worry about.

  11. #11
    Join Date
    Jun 2007
    Posts
    188
    Quote Originally Posted by RyanD View Post
    Yes, no

    People here are just throwing out things they read and repeat on the forums. Your solution needs to be unique to your app and your traffic patterns. What is generating your load? What is driving any I/O wait, is it web activity or is it db activity, what is consuming ram, would you be better serve with two smaller web servers and a hardware load balancer, these are all questions that need to be looked into. Not just making a blind suggestion on a forum
    Ditto.

    Before upgrading, it is important to examine: MRTG graphs over the past 12 months, examine how the load on the different parts of your server has changed, and how the site will be utilizing your server down the road. Unless you establish how the server will be utilized over the next 6-12 months, you will have to upgrade again. By setting up your new server in a way that allows you to easily upgrade in the future, as well as delay said 2nd upgrade for at least 8-12 months, you'll have to upgrade again. I would suggest supporting all non-DB services from a first server, and the database from the second server. Your server will need to be custom tailored to your needs, and having a setup taht has not been well prepared will be to your detriment. In general, I would suggest avoiding SAS drives and instead use SATAII drives. The added reliability and speed of SATAII over SATA will be well worth the money. I would suggest RAID 0 for your web server for the added speed in reads, and the additional reliability (either drive can fail without interruption in your services). The second server would be most efficient over time by using RAID10 rather than RAID5. This allows for higher read speeds. Although both allow any drive to fail, RAID10 allows for 2 drives to fail as long as they both contain different data.

    The best way to efficiently upgrade over the long term (since you ask here, I'm guessing you arent terribly familiar with this sort of upgrade) is to hire a consultant / administrator to look at your setup and establish an upgrade that is effective over the coming 8-12 months. And make sure they do not offer services themselves, as they may be tempted to think you are going with their service, and will overestimate what you need as they may think they will be getting the business.

  12. #12
    Join Date
    Mar 2008
    Location
    Chicago, IL
    Posts
    331
    One thing, there is no redundancy with RAID 0, The data will remain intact with RAID 1, but you do not get the speed of RAID 0.
    Last edited by SingleHopChris; 03-18-2008 at 04:52 PM. Reason: additional information.
    Chris Larkin
    Senior Hosting Consultant
    SingleHop Managed Dedicated Servers
    http://singlehop.com

  13. #13
    Join Date
    Jun 2007
    Posts
    188
    Quote Originally Posted by SingleHopChris View Post
    One thing, there is no redundancy with RAID 0, The data will remain intact with RAID 1, but you do not get the speed of RAID 0.
    You have it mixed up. RAID 1 has the data striped over 2 drives, RAID0 has the data in parity over two drives. I.e. there are two drives with identical data in RAID0, whereas in RAID1 the data is split over two drives.

  14. #14
    Join Date
    Mar 2008
    Location
    Chicago, IL
    Posts
    331
    I cannot post links yet, but just google RAID 0.
    Chris Larkin
    Senior Hosting Consultant
    SingleHop Managed Dedicated Servers
    http://singlehop.com

  15. #15
    Join Date
    Jan 2007
    Location
    Den Helder, Holland
    Posts
    765
    scapeish, you mixed it up there, Raid 0 is one part on one drive, second part on second drive, one byte per drive.

    Raid 1 is mirroring the same byte on two drives.

  16. #16
    Join Date
    Aug 2004
    Posts
    616
    Quote Originally Posted by scapeish View Post
    You have it mixed up. RAID 1 has the data striped over 2 drives, RAID0 has the data in parity over two drives. I.e. there are two drives with identical data in RAID0, whereas in RAID1 the data is split over two drives.
    You have it opposite here. RAID1 is mirroring.
    BGP GRID
    UNetLab Network Simulator Hosting
    Prepare for your CCNA/CCNP/CCIE certifications today!

  17. #17
    Join Date
    Feb 2004
    Location
    Atlanta, GA
    Posts
    5,627
    and this is exactly why I say don't just follow forum advice...

    that raid1/raid0 statement is completly backwards

  18. #18
    Join Date
    Oct 2006
    Posts
    76
    Quote Originally Posted by RyanD View Post
    and this is exactly why I say don't just follow forum advice...

    that raid1/raid0 statement is completly backwards
    So your forum advice here is...don't follow forum advice?

    Just kidding Your advice on the issue in general is spot-on.

  19. #19
    Join Date
    Jan 2004
    Location
    Chicago
    Posts
    984
    I puzzled over that comment by scapeish too, but I'm sure he'll figure it out after a drive fails on one of his servers running raid 0.

  20. #20
    Guys, I am really thankful for the comments. Although there were inconsistencies with Raid 1/0, I believe it will be for the best of my interest to get someone who knows this thing, take a look at my existing setup and advice on how to proceed.

    Since I am planning to get admingeekz to setup the servers for me, I'll better get their service also to analyze our system before and recommend the upgrade path.

    Thank you very much

  21. #21
    Join Date
    Dec 2006
    Posts
    4,149
    Quote Originally Posted by rjdavid View Post
    Guys, I am really thankful for the comments. Although there were inconsistencies with Raid 1/0, I believe it will be for the best of my interest to get someone who knows this thing, take a look at my existing setup and advice on how to proceed.

    Since I am planning to get admingeekz to setup the servers for me, I'll better get their service also to analyze our system before and recommend the upgrade path.

    Thank you very much
    My suggestion is to either examine yourself or get external help to examine your IO/etc. statistics to see which is the main driving factor of the high loads.

    Once you get the main factor, come back to us and you'll get much better advice.
    Right now, those loads can come from a myriad of factors, and each factor requires different courses of action.

  22. #22
    Join Date
    Feb 2004
    Location
    Atlanta, GA
    Posts
    5,627
    Quote Originally Posted by tsj5j View Post
    My suggestion is to either examine yourself or get external help to examine your IO/etc. statistics to see which is the main driving factor of the high loads.

    Once you get the main factor, come back to us and you'll get much better advice.
    Right now, those loads can come from a myriad of factors, and each factor requires different courses of action.
    Solid advice... this is exactly what I was suggesting

  23. #23
    Join Date
    Jun 2007
    Posts
    188
    Yeah, I was wrong. But then again I use RAID10 for the one production server I maintain, so RAID 0 and RAID 1 have been known to confuse me. The rest of my advice still should be good, though.

  24. #24
    Join Date
    Aug 2005
    Location
    PA
    Posts
    323
    I would make the following points:
    1. load average by itself is not a good indicator of what is going on.

    2. Use the sysstat package (under Fedora/RedHat/CentOS) to install mpstat, iostat, and sar utilities.

    Use "iostat -xk 5" to see disk and CPU usage every 5 seconds.

    Read the man page for sar and try the different options. Best use of sar is to see what happened recently (it keeps data for the last 7 days) and summarize what is going on.

    My guess is that you are not running out of CPU but are running out of disk. Adding more RAM may fix the issue.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •