You sound like you know a heck of a lot about tuning. It would be cool it you wrote up a brief synopsis of what you did with some config, etc. examples, if you have the time. I think it would be enlightening to all of us.
I may not provide the completed solution you might desire, but I do try to provide honest suggestions to help you solve your issue.
I'll write something up after im done building, testing, and releasing the new forum.
Caching with session cookies can be tricky, I want to shake out any weird proxy/cache bugs with real users on a live site before I post anything. The NGINX configuration is fairly simple, and ill post the setup after im confident it works. Im not an expert at configuring NGINX, and could easily make a mistake, but I am a scalability architect with 25 years IT experience ;-)
I was experiencing load times on 2.1b2 significantly slower than my old php forum. I enabled Xcache on my apache server and it sped things up dramatically!
@Todd said:
We've done a lot of scaling optimizations which took load off of io, but has raised the load on cpu. This is due to having more calculation in the app rather than the database.
We will be improving the cpu performance in coming versions. We do have some inefficiencies due to some options in the code that don't get much use and we will be removing support for some of these edge cases. I'll be talking about this after 2.1 gets its final release.
One of our cpu bottlenecks though is rendering and that has to do with our theming flexibility. This is just going to be a fact of a Vanilla forum and I think it's a fair trade-off. We have a lot more power than phpbb or mybb and we're designed to work on more modern hardware.
We build our software for scale. This means that our software won't perform as well on lesser hardware or on small communities. However, when the community is large we have the ability to parallelize a lot of the code and as a result we can run massive communities.
not to sound recalcitrant but shifting load from backend to front end or vice versa only buys you a performance when you have an application that is woefully unbalanced to begin with.
true optimization for performance comes only when you redefine the architecture such that the mundane or repetitive calculations and tasks are no longer necessary.
as for generalized event management and other flexibility focused capabilities, i'd like to profile vanilla in my production environment to really see where the cycles are being consumed. My site was performing god awful a few months ago, I traced it down to some really poorly defined SQL statements. But at its best, Vanilla seems to be a bit sluggish.
to be fair none of this is easy, i've designed more than my fair share of "enterprise class" solutions with poor performance due to architectural choices.
@meshugy said:
I was experiencing load times on 2.1b2 significantly slower than my old php forum. I enabled Xcache on my apache server and it sped things up dramatically!
on this note, and building on my previous post. my 2.1b2 site was running about 5-10x slower than my 2.0.18.x site (loads that normally take 2sec were taking 10-20sec). This would be with the same content but actually fewer plugins, due to the problems with so many plugins an the new version.
@hbf said:
on this note, and building on my previous post. my 2.1b2 site was running about 5-10x slower than my 2.0.18.x site (loads that normally take 2sec were taking 10-20sec). This would be with the same content but actually fewer plugins, due to the problems with so many plugins an the new version.
what theme? what cdn? and any social networking plugins activated?
I may not provide the completed solution you might desire, but I do try to provide honest suggestions to help you solve your issue.
Yeah, we're going to need a breakdown of what resources actually took that long. It seems pretty looney to me that 2.1 is running significantly slower so I'm guessing something is wrong here. You might wanna create a discussion for troubleshooting it.
@Lincoln said:
Yeah, we're going to need a breakdown of what resources actually took that long. It seems pretty looney to me that 2.1 is running significantly slower so I'm guessing something is wrong here. You might wanna create a discussion for troubleshooting it.
how do i activate the profiling tools referred to in the index.php?
I'd like to do a little investigation before I start asking for help. I'm sure it had to do with errors i was seeing in various plugins.
As for the theme/cdn/social questions...
theme was a very lightly modified version of the default. you can see it here http://bak.homebrewforums.net
@hbf said:
how do i activate the profiling tools referred to in the index.php?
Based on what I read in the index.php, you should install PECL xhprof on your server, then open your site as follows: yoursite.com?xhprof=yes&memory=yes&cpu=yes. I haven't tried it myself, but I reckon it should work that way.
I'm initially interested in simple browser console timings for the resources. I'm wondering if it's actually the script running that's causing that delay or if maybe there are large assets being called that slow the whole thing.
@hbf said:
on this note, and building on my previous post. my 2.1b2 site was running about 5-10x slower than my 2.0.18.x site (loads that normally take 2sec were taking 10-20sec).
^^^^ deal breaker right there. Vanilla is already far slower than phpbb without some advanced cahing
That's the problem. You can't say: "Vanilla is slow, I'm moving on". What you need to do is install those tools and see where it is slow. When the slowness cannot be solved easily, you can still move on, but find out why it is slow first.
@UnderDog said:
That's the problem. You can't say: "Vanilla is slow, I'm moving on". What you need to do is install those tools and see where it is slow. When the slowness cannot be solved easily, you can still move on, but find out why it is slow first.
I agree. We are having performance issues with Vanilla 2.0.18.x and we are now going through the steps to troubleshoot it. We have been able to exclude the server and the database (it's practically empty), now we are focusing on the code.
The curious thing is that, when I tried a siege test (50 simultaneous users), the reponse times were progressively longer with each request (2 seconds, 2.5, 2.8, 3.4, 4, 4.5, 5.2, up to 9 seconds, then I stopped the test), while other applications (e.g. WordPress) were more consistent, with response times between 2 and 4 seconds, at any given point. It would be interesting to see if there is any race condition that causes one process to slow down the next ones.
Comments
@jackjitsu
You sound like you know a heck of a lot about tuning. It would be cool it you wrote up a brief synopsis of what you did with some config, etc. examples, if you have the time. I think it would be enlightening to all of us.
I may not provide the completed solution you might desire, but I do try to provide honest suggestions to help you solve your issue.
I'll write something up after im done building, testing, and releasing the new forum.
Caching with session cookies can be tricky, I want to shake out any weird proxy/cache bugs with real users on a live site before I post anything. The NGINX configuration is fairly simple, and ill post the setup after im confident it works. Im not an expert at configuring NGINX, and could easily make a mistake, but I am a scalability architect with 25 years IT experience ;-)
@jackjitsu
anything you write up, will be great as a guide, i'm sure. looking forward to it.
perfection although desired is not necessary, you probably know more than alot of us. .
I may not provide the completed solution you might desire, but I do try to provide honest suggestions to help you solve your issue.
Well, as I suspected, there IS a better way.
I ditched the NGINX PROXY to NGINX, and got the same results using a single instance of NGINX. Where is the mosh emote when you need one???
The setup just became trivial, fast, with low complexity. Yes!
Would you mind sharing your nginx config with us @jackjitsu ?
I will. Let me finish my testing. Im real excited about the re-launch of my site using Vanilla right now.
I was experiencing load times on 2.1b2 significantly slower than my old php forum. I enabled Xcache on my apache server and it sped things up dramatically!
not to sound recalcitrant but shifting load from backend to front end or vice versa only buys you a performance when you have an application that is woefully unbalanced to begin with.
true optimization for performance comes only when you redefine the architecture such that the mundane or repetitive calculations and tasks are no longer necessary.
as for generalized event management and other flexibility focused capabilities, i'd like to profile vanilla in my production environment to really see where the cycles are being consumed. My site was performing god awful a few months ago, I traced it down to some really poorly defined SQL statements. But at its best, Vanilla seems to be a bit sluggish.
to be fair none of this is easy, i've designed more than my fair share of "enterprise class" solutions with poor performance due to architectural choices.
Vanilla Wiki, Tastes Great! 31,000 viewers can't be wrong. || Plugin Development Explained
on this note, and building on my previous post. my 2.1b2 site was running about 5-10x slower than my 2.0.18.x site (loads that normally take 2sec were taking 10-20sec). This would be with the same content but actually fewer plugins, due to the problems with so many plugins an the new version.
Vanilla Wiki, Tastes Great! 31,000 viewers can't be wrong. || Plugin Development Explained
what theme? what cdn? and any social networking plugins activated?
I may not provide the completed solution you might desire, but I do try to provide honest suggestions to help you solve your issue.
Yeah, we're going to need a breakdown of what resources actually took that long. It seems pretty looney to me that 2.1 is running significantly slower so I'm guessing something is wrong here. You might wanna create a discussion for troubleshooting it.
how do i activate the profiling tools referred to in the index.php?
I'd like to do a little investigation before I start asking for help. I'm sure it had to do with errors i was seeing in various plugins.
As for the theme/cdn/social questions...
theme was a very lightly modified version of the default. you can see it here http://bak.homebrewforums.net
i dont use a cdn.
no social plugins enabled.
Vanilla Wiki, Tastes Great! 31,000 viewers can't be wrong. || Plugin Development Explained
Based on what I read in the
index.php
, you should install PECL xhprof on your server, then open your site as follows:yoursite.com?xhprof=yes&memory=yes&cpu=yes
. I haven't tried it myself, but I reckon it should work that way.My shop | About Me
I'm initially interested in simple browser console timings for the resources. I'm wondering if it's actually the script running that's causing that delay or if maybe there are large assets being called that slow the whole thing.
...........
^^^^ deal breaker right there. Vanilla is already far slower than phpbb without some advanced cahing
My old phpBB forum is definitely faster: http://www.djangobooks.com/php-forum
However, with caching my Vanilla forum is pretty close: http://www.djangobooks.com/forum
That's the problem. You can't say: "Vanilla is slow, I'm moving on". What you need to do is install those tools and see where it is slow. When the slowness cannot be solved easily, you can still move on, but find out why it is slow first.
There was an error rendering this rich post.
I agree. We are having performance issues with Vanilla 2.0.18.x and we are now going through the steps to troubleshoot it. We have been able to exclude the server and the database (it's practically empty), now we are focusing on the code.
The curious thing is that, when I tried a siege test (50 simultaneous users), the reponse times were progressively longer with each request (2 seconds, 2.5, 2.8, 3.4, 4, 4.5, 5.2, up to 9 seconds, then I stopped the test), while other applications (e.g. WordPress) were more consistent, with response times between 2 and 4 seconds, at any given point. It would be interesting to see if there is any race condition that causes one process to slow down the next ones.
My shop | About Me