Performance Troubleshooting

High CPU Load

CPU

Possible causes include runaway processes, misconfigured services, or inefficient queries. Use top or htop to identify offending processes. Consider scaling vertically or optimizing code.

Memory Leaks

Memory

Monitor with free -m and vmstat. Identify long‑running processes with increasing RSS. Use profiling tools (e.g., valgrind, dotnet‑counters) to locate leaks.

Disk I/O Saturation

Disk

Check iostat and iotop. High await times indicate bottlenecks. Consider moving to SSDs, increasing IOPS limits, or off‑loading logs to separate volumes.

Network Latency

Network

Run ping and traceroute to pinpoint slow hops. Verify MTU settings and inspect firewall/NAT rules that may cause drops.

Slow Database Queries

Database

Enable slow‑query logs, analyze execution plans, add appropriate indexes, or consider query caching. Review connection pool sizes.