- Prepared by: Rohit Chauhan
- Skype: rohitchauhan004
- Mail: firstname.lastname@example.org
Slow Server Performance Factors
Expert Advised to use Latest and Max. Configuration for optimized server (which Best suits your Budget)
Intel XEON® or Higher
16 GB or More
Windows Server 2007 (Enterprise) or Higher
Cause and Solutions
· Memory leaks
Cause: Leaks can accumulate maxing out the memory of your server and slowing
Solution: You can increase the memory in your server, but the best fix would be to locate the memory leak and recode the offending script.
· Too many processes / connections
Cause: Programs that keep sequel processes or don't release server connections can bog down your server response time
Solution: rewrite the code to release resources upon completion.
· External resource delays
Solution: Periodically cache the resource locally on your server and serve locally. Use a CRON script to copy the resource
· Inefficient SQL Queries
Cause: Database queries that are written poorly can cause slowdowns to web sites.
Solution: Databases that are indexed properly can also exclude the cause slowdowns.
· Slow database calls
Cause: Each additional plug-in can make calls to a database, which can add up.
Solution: Disable any unnecessary plug-in in Wordress or your favourite CMS.
· Insufficient server resources
Cause: Low memory, bandwidth caps, or limited disk space can cause paging and poor server response times.
Solution: Use VMStat, Top, etc. to locate bottlenecks and either decrease resource usage or increase resources (more memory and disk space can't hurt).
· Overloaded Shared Servers
Cause: Some hosting companies put too many sites on the same shared server. Servers have limited resources and these can be taxed (memory, processes, bandwidth, etc.) by having too many sites competing for the same resources.
Solution: Move to a lightly loaded shared server or a dedicated server where you have complete control.
· Inconsistent website response times
Cause: If your site is slower during different parts of the day (say near lunch time for example), it may be due to increased load on the server slowing down your response time due to maxed out resources (processes, memory, disk space, bandwidth).
Solution: Find which resource(s) are highly utilized (CPU, memory, processes etc) during high load and profile and fix "hot code" to help minimize the impact of your scripts. Increasing the resources allocated to your server may help (number of processes for example). A dedicated server may also help here.
Hardware Configuration for good server performance:
· Increase the amount of RAM on your web server - get as much as possible (eg. 4 GB or more)
· Better performance is gained by obtaining the best processor capability, A modern BIOS should allow you to enable hyper threading
· Use gigabit Ethernet for improved latency and throughput.
· Use a RAID disk system.
· Check the settings on your network card. You may get an improvement in performance by increasing the use of buffers and transmit/receive descriptors (balance this with processor and memory overheads) and off-loading TCP checksum calculation onto the card instead of the OS.
· Load balancer should also be setup