Basic Performance Analysis

Basic Performance Analysis

It is a great practice to oversee your servers using resources monitoring software like Nagios + Cacti, Zabbix, and Zenoss. You can run any one of these suites in a virtual machine (VM), which can connect to all your servers and VMs. You then ask either a Simple Network Management Protocol (SNMP) daemon or those machines’ dedicated agent daemons (or WMI info for Windows) to provide the latest performance counters. These monitoring software usually present these counters in graph form. They let you see basic CPU, memory and disk capacity, and disk I/O usage. You should configure them to alert you via email should one of the performance counters go bad.

In Unix, another tool you can use to read and analyze server performance is the System Activity Report (sar) command, which is part of the sysstat package. It is a system monitoring command that can report on various system loads.

When generating the sar log, make sure you include the following items in the request:

  • Processor, physical memory, physical disk, network interface

  • Operating system, virtual memory,
page file,
server work queues,
virtual resources

Things to remember when monitoring and troubleshooting server performance issues:

    • Always note baseline numbers before you change anything in the server. Doing this will give a reference point you can go back to to see if the steps you are taking are having any effect.

    • Before deciding to add or upgrade to a new hardware, check first if reconfiguring existing hardware can resolve the issue.

    • For application or database servers, the CPU is usually the source of performance blockages. High CPU utilization does not always mean that it is busy; it could also be waiting on another subsystem. Always look at the system as a whole, including the subsystems, as there could be a cascade effect that is causing problems.

    • Although the disk subsystem is the most common source of bottlenecks, hidden performance problems can also be caused by other factors such as lack of memory.

    • Aside from capacity, you should also consider performance and workload when configuring disks—Is disk access random or sequential? Is there I/O large or small?

    • Performance issues in the network subsystem can cause many other problems like high latency, low download and upload speeds, refused connections, and even kernel panic.

You can read more information about tuning Linux systems for performance here:

See our Knowledgebase for more How-To articles.

Comments are closed.