Take the 2-minute tour ×
WordPress Development Stack Exchange is a question and answer site for WordPress developers and administrators. It's 100% free, no registration required.

my WPMS site is hosted on 8 cores/32mb RAM server but the response time is very high. We have about 1000 blogs (35,000+ tables on single db) and 70,000 pageviews per mounth. I think that i can down the response time moving blogs that have more pageviews into separeted DB and spliting all blogs into 100 blogs per db with hyper-db plugin. What do you think?

share|improve this question
    
have you definitively concluded that the database is the problem - it does sound likely, but are you seeing lots of slow queries and similar? –  anu Jan 10 '11 at 17:30
    
What are your query cache settings in my.cnf? Also have you tried a tuning script like tuning-primer.sh? You should be able to pinpoint the the slow queries if that is your problem. –  Chris_O Jan 11 '11 at 4:49
    
As long as this question is MySQL related, you should consider to ask it on serverfault.com, there you might get better help for server related questions. –  hakre Jan 23 '11 at 1:07

3 Answers 3

Yes, you are long past the point where you need to split the database. ;)

share|improve this answer
1  
Err... I beg to differ on that. 70k page views with that kind of hardware should get served without the slightest hiccup. :-) –  Denis Jan 10 '11 at 18:27
1  
It doesn't matter that the number of pageviews is low, if the database has 35,000 tables: askbjoernhansen.com/2008/02/14/… –  scribu Jan 10 '11 at 20:06
    
And I'm basing my answer on experience. :) –  andrea_r Feb 14 '11 at 22:37

70k page views per day seems rather trivial considering your hardware. Even if the bulk of it is spread in a 10h per day time frame, you're dealing with (roughly) a page served per second. Your hardware should be dealing with that without a hiccup. (Then again, it is WP...)

Imo, before you start splitting sites in multiple databases, install memcached and an object-cache. Doing so will bring down the number of DB queries.

Then, optionally add BatCache or the Semiologic Cache (which has its own object-cache implementation), aka something that implements memcached-based caching (the first caches pages served to guests; the second caches pages served to guests and key queries for all users). If you think you'll eventually outgrow a single server, you don't want any static file based caching. If you think you won't, Total Cache or even Super Cache are good choices as well.

Last but not least, have you configured mod_deflate (which is built into Sem Cache too) and asset concatenation (also done by Sem Cache, as well as by the likes of Total Cache)? These significantly reduce the perceived load time.


Edit: sorry, I just re-read the question and you say 70k per month, not day; which is even more ridiculous as a server load: 2 pages served per minute, i.e. your CPU should nearly always be idle.

share|improve this answer

Try db-cache first. If your queries start being cache-d you will find a 5-6x improvement. Wordpress does not have a permanent cache. Can someone tell, why? Every metadata, user data comes from database by every page load. Nonsense...

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.