Vanilla Grinding To A Halt
I'm hoping someone can give me some bright ideas to solve my performance problem.
I have a vanilla forum running 2.1b1
It's here for anyone that wants to take a look: http://www.thefretboard.co.uk/
It's been running for about 6 months and started at about 25k page impressions /day and recently gone up to around 44k /day
It's running on a 2GB Linode box under Apache Prefork with APC enabled.
Performance was fine, but now even though we are sitting at 25% RAM usage and 5% CPU usage the page load times have gone through the roof, from a second or so we were getting in the early days to anything from 6-10 seconds, or sometimes more.
We've had a look at the DB traffic and none of the queries are taking a long time and those that were a big slow we've added some indexes and sorted them.
I'm getting a bit stumped, but our users are getting unhappy so I need to do something ASAP.
Any suggestions?
Comments
It could be bots. Do you have a lot of ads? I did find it choked on loading.
The use of Fonts can also slow it down .
❌ ✊ ♥. ¸. ••. ¸♥¸. ••. ¸♥ ✊ ❌
We don't have any ads on the site.
How do fonts cause a problem?
If you inspect your forum with a web inspector and record the timeline then see the network requests you can see how long it takes for a file to be called , I will post a screenshot if you want, the google fonts you are using are taking up a lot of resources to load.
Maybe try to add the fonts to your forum folder and then place the src url in the style sheet. You can look at the plugin VFonts to get an idea of how to do this.
❌ ✊ ♥. ¸. ••. ¸♥¸. ••. ¸♥ ✊ ❌
here you can see the latency of the fonts. They are off the charts really...
❌ ✊ ♥. ¸. ••. ¸♥¸. ••. ¸♥ ✊ ❌
Something to tidy up, but once you've been on the site, they're in the cache
I'm talking about 6-10 seconds for the server to come back with a response before you even load any other assets.
It took 36 seconds to load meanwhile looking at a blank page. In my experience with using fonts , they are the cause of this 99% of the time. The other is heavy images or flash content.
Too many beforeload events ...
❌ ✊ ♥. ¸. ••. ¸♥¸. ••. ¸♥ ✊ ❌
Thanks for the tip regarding the fonts
I'm specifically talking about the amount of time it takes for the server to come back rather than external resources loading.
I should add that it's not consistent so at the moment it's coming back in 600ms, but sometimes that can be 10 seconds.
The best procedure to begin trouble shooting is to eliminate the possibilities . Disable all the plugins you added one by one and revert to the default vanilla theme.
❌ ✊ ♥. ¸. ••. ¸♥¸. ••. ¸♥ ✊ ❌
perhaps these will give insights or ideas to troubleshoot.
http://vanillaforums.org/discussion/comment/199091/#Comment_199091
http://vanillaforums.org/discussion/comment/199563/#Comment_199563
and upgrade to 2.1b2 with security fixes. to keep your site from being compromised.
I may not provide the completed solution you might desire, but I do try to provide honest suggestions to help you solve your issue.
Memcache+PHP memcached can help (there is a config option).
grep is your friend.
I'd like to enable that, but I'm not sure from reading previous tutorials if I want mecache, memcached, or varnish.
Any links to a decent tutorial about how to get caching going?
Although thoses aren't directly the problem, the number of request does have a cumulative effect, if the server is already tied up, even if individually minimal.
Either put the further forward with a cdn or accelerator, or consolidate.
grep is your friend.
PHP Memcache isn't supported, Only PHP Memcahced. You simply need to install memecached server, and php memcached. Then you enable it is in config.
Varnish is a accelerator it is more to do with giving your static resources a quick turn around and possible some micro caching, it is more complicated to setup and the same thing could be achieved by a cdn if you aren't so inclined.
grep is your friend.
Maybe something silly, but also take a look at your activity and your notifications. Maybe someone is getting a lot of notifications. Don't focus on it though. Focus on the answers from the experts above me first.
There was an error rendering this rich post.
I think we've managed to improve things by reducing our keepalive timeout and switching from prefork to worker, but now the views counter seems to have stopped working.
Any ideas?