A simple scenario , I have implemented a Email server for my users to access / send emails . Now the users have grown and my server is not able to handle the load .
Now the question is why does a simple thing like email create a server load ?
Scenario 1) It has reached its network limits - bandwidth ( this can be fixed by askig ISP to give me more bandwidth so ruled out) or TCP/IP ports - max 64000 per server is only allowed if I am not mistaken . I reckon this possibility is more relevant . What would be a solution then ? Add more network cards and enable bonding ? If yes will the bonding take care of load balancing ? Again only 1 IP so how can this counter this problem ? Maybe Virtual IP's ?
Scenario 2) It is not able to process requests - (Processor not enough ). Now the solution is probably Clustering . How do I go about implementing this? Who takes care of load balance ? Would it be like 4 servers each having webserver package running with a IP ?