Serious problems with server performance

jatkoaika

Member
We have just migrated from vBulletin 3.8 to xenForo and at the same time upgraded our server to much more powerful one.

Our virtual server's specifications:

CentOS 6 64bit
2 processor cores
8 Gb RAM
100 GB SSD
Apache with Zend Opcache
MySQL

Our forum has peaks of 2400-2800 visitors at the same time, so the traffic is quite heavy. When the peaks occur, the forum becomes almost unusable. Currently with about 1200 visitors, the server loads are around 8-9.

I have crawled through this community forum and tried almost every trick proposed here, but nothing seems to work.

Our my.cnf:

[mysqld]
datadir=/data/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql

symbolic-links=0
innodb_buffer_pool_size = 4G
innodb_additional_mem_pool_size = 10M
innodb_flush_log_at_trx_commit = 2
innodb_lock_wait_timeout = 100

key_buffer_size=2G

max_connections = 300
interactive_timeout = 100
wait_timeout = 100
connect_timeout = 10

query_cache_size =64M
query_cache_type=1
query_cache_limit=1048576

table_open_cache=64

thread_cache_size=4

max_heap_table_size = 32M
tmp_table_size = 32M

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

Relevant parts from Apache conf file:

Timeout 45
KeepAlive On
MaxKeepAliveRequests 1000
KeepAliveTimeout 1

<IfModule prefork.c>
StartServers 5
MinSpareServers 5
MaxSpareServers 40
ServerLimit 256
MaxClients 256
MaxRequestsPerChild 25000
</IfModule>

<IfModule worker.c>
StartServers 4
MaxClients 200
MinSpareThreads 25
MaxSpareThreads 75
ThreadsPerChild 25
MaxRequestsPerChild 0
</IfModule>

Does anyone have any propositions to what do to next to get the forum run faster?
 
On my tests XenForo is more resource intensive than vBulletin. I also moved from vBulletin 3.8 to XF 1.4. Server load got noticeably increased...

How many posts do you have on your forum? Are you using the Enhanced Search add-on?
 
On my tests XenForo is more resource intensive than vBulletin. I also moved from vBulletin 3.8 to XF 1.4. Server load got noticeably increased...

How many posts do you have on your forum? Are you using the Enhanced Search add-on?

We have about 5.5 million posts currently on our forum. And no, we don't have Enhanced Search installed.
 
Another big favor you could do yourself is to dump Apache and go with something like nginx, OpenLiteSpeed or LiteSpeed.
 
We have just migrated from vBulletin 3.8 to xenForo and at the same time upgraded our server to much more powerful one.

Our virtual server's specifications:

CentOS 6 64bit
2 processor cores
8 Gb RAM
100 GB SSD
Apache with Zend Opcache
MySQL

Our forum has peaks of 2400-2800 visitors at the same time, so the traffic is quite heavy. When the peaks occur, the forum becomes almost unusable. Currently with about 1200 visitors, the server loads are around 8-9.

I have crawled through this community forum and tried almost every trick proposed here, but nothing seems to work.

Our my.cnf:



Relevant parts from Apache conf file:



Does anyone have any propositions to what do to next to get the forum run faster?
I had the same issue when i first converted over 7.5 million posts. We converted our database to mariadb problem solved.

Also, there comes a time on a large forum like yours when you need to add a second dedicated server for your database, i have two servers running my forums. One web, one database.
 
I'm no expert but I would suggest dropping the plain MySQL and going with what someone suggested MariaDB or even Percona. That will help considerably too.
 
What is causing the load? Making suggestions without knowing what is causing the load is absolutely useless. Is it disk i/o? Is it CPU? etc. My guess is going to be on the fact that you're using 2 shared cores (and probably just 1 actual core with 1 HT core), and the database usage is probably grinding the heck out of the CPU. Could it be apache? Sure, but 2800 uesrs is certainly not anything apache can't handle, and certainly shouldn't drive the loads up that high.

But without knowing exactly what's causing the load, all anybody can do here is guess.
 
That's a small cnf file so I'd learn what every single line means (documentation, stackoverflow, specialized queries etc) and optimize them one by one after leaving 24 hours in between so you can at least get idea of the change effect. That will rule out mysql at least. I have around the same amount of users during peak, (10,000 members & lurkers online is our record, that also crashed the server lol) and just spent two weeks sorting mine out (now using mariadb). Get that settled and move on to the next service, it could be something you stumble across in your config adventures that is the culprit. These configs are too complex just to be able to say "change that and restart no worries bro", or maybe I've just been burned by too many cut/paste "tutorials" over the years before I paid attention to what does what and why. Nginx is my next learning adventure.
 
Last edited:
I noticed 0% increase in server loads after converting 14M posts from vbulletin 3.6 to XF. I'm running plain ol' apache and mysql. I'd guess it's the lack of XF Enhanced Search that's causing your problems. You must have ran Sphinx on your vbulletin setup? But yeah you need to see what's causing the load. Top server load numbers are pretty useless in my experience.
 
I noticed 0% increase in server loads after converting 14M posts from vbulletin 3.6 to XF. I'm running plain ol' apache and mysql. I'd guess it's the lack of XF Enhanced Search that's causing your problems. You must have ran Sphinx on your vbulletin setup? But yeah you need to see what's causing the load. Top server load numbers are pretty useless in my experience.
I dont have enhanced search and have 0 issues . I would highly recommend getting a sever tech to look at his problem. I know i do when need, we cant know it all.
 
Top Bottom