Hello I am using the eva2000 script and i have Nginx and php-fpm + (suhosin patch)and Mariadb plus memcache and xcache on a huge forum. I am wondering how can i expand my http performance adding a new dedicated server for this? How can i configure it so it will split traffic or anything else that will help?(I know i can use cloudflare but i need a solution without this). Also is it possible to add another server for splitting traffic for mysql? If yes how can i setup this? Thank you
you can use nginx for load balancing to other ngnix/php servers. the front nginx would just proxy the requests to other servers so you can scale out a lot. for mysql you would need to setup a mysql cluster and with its ability to shard data it allows you to scale out quite well.
When you say "http performance" are you just referring to your site's response time in general or are you actually saying that you think the web server is the bottleneck? All the software/servers you've mentioned, the improvements will be trivial at best if your forum is that big. As Einheijar recommended, split the database server from the web server. Have your provider put the database server on the same switch. For a forum, it's typically the database that is the bottleneck.
You will need more than just one dedicated server. Ask your provider for a "load balancer" with sticky sessions. The load balancer will distribute traffic across your HTTP dedicated servers with ease. Also, these machines are capable of filtering SYN flood attacks as well (works like a firewall).
why dont you put a new web server, and add its IP to the A record list. That way you are balancing your traffic directly at the DNS and most request will split evenly to both web servers
I don't believe there would be anyway to scale out the web server to two or more servers with a load balancer, if the database is located currently on the same machine. So the first step is to move the database to its own server, IF it is on the only server you have. That alone should get you an increase in performance. Then the next step would most likely be to cluster your DB server to either a master-slave or even a MySql Cluster setup. The database is more than likely the bottleneck of any dynamic kind of web site and forums are probably the most dynamic kinds of web sites you can find. So sticking power into your DB is always good! If you still are having performance issues or want even better performance, then you need to look at the scaling out of the web servers either horizontally, with more servers and load balancing, or vertically, with a better server and more resources (ie. more CPU power and RAM, faster drives ala SSD etc.). Then there is the last resort with caches like Varnish. But, I've learned from a smart guy, caches like Varnish are really a kind of last resort. Without knowing more about your whole set-up, it is hard to guess what you need exactly, but the steps above are generic ones and should be correct for anyone who has a growing web site. Scott