High load on the servers are one of the major threat to Business uptime. Due to the high load on the server, the websites get slow down and sometimes getting errors. This will leads to lots of complaints from users and also affect business growth.
We are providing 24×7 Monitoring service on our Server Management plans, in which we get alerts when the server became overloaded or affected by memory load or spamming type issues.
So we can take a look into detail with high load on the servers.
What is High Load Average ?
A high load average means that a system or server is overloaded and many processes are waiting for CPU time. So there will be a number of processes waiting for completion and it will be in the queue leads to load on the server.
Major Causes of High Load
- Overloaded server
- Hard disk performance
- Process and cron job scheduling
- Database performance
Spamming causes a lot of issues like mailserver starts to use high resources in the server, the ip get blacklisted due to spamming and it will leads to increase the load in the server by lot of bounce back mails. Database performance is also another important fact and long time queries can cause high load.
There are several tools available to check for load in the server. You can use the “top” or “uptime” command to check which process using more CPU resources.The top command will give you a better idea about the issue.
Check for memory usage
Optimize the server to avoid high load issue
You will get which process is causing high load in the server from “top” command then you can proceed to check with that process usage. For a precaution, it will be better to check the server with the below options.
1. Choose the right server hardware type
You must select the appropriate hardware type based on your requirements, so you should plan first how many domains/accounts that you want to host on the server.
If you have a high load issue arises in live server, then you can check the available disk space in the server by the below command ;
From this above command you can get free and used disk space in the server, if the disk space is not enough to handle the processes in the server it is better to add an additional disk space or migrate to a higher disk available server as per your requirement.
2. Plan your backup scheduling
Schedule the backups for your server except than the peak time (high traffic time). The backups running on the peak time will cause high load in the server.
Also, check for how much time the backup takes to complete or backup is completed in time. So the backup should be scheduled in the cron job with a proper time interval to avoid high load.
3. Track the mail server
You should monitor your mail server performance like spamming, mail queue etc. We are using the Icinga monitoring system for monitoring these types of issues for our clients.
The spamming causes overload in the mail server and it will finally lead to an increase in the server load.
4. Tune the server configuration like Mysql, Php-fpm ( based on the server configuration)
From the “top” command output you can get which process is taking more CPU time to load. Most of the time, in several servers the MySQL or php-fpm eating more CPU time. So for this, we can tune these services.
For php-fpm we have to optimize the configuration in the server like pm.max_children,pm.start_servers,pm.min_spare_servers,pm.max_spare_servers, pm.max_requests etc.
In case of Mysql we need to optimize both database and mysql database server. It must be done with proper knowledge and it is better to seek technical assistance for this.