1. Cài đặt htop và iotop
Trên Ubuntu/Debian:
sudo apt install htop iotop
Trên CentOS/Rocky/AlmaLinux:
sudo dnf install htop iotop
2. Phân tích hiệu suất CPU và RAM bằng htop
Chạy htop trong terminal:
htop
Điểm nổi bật:
- Màu sắc trực quan: CPU, RAM, Swap được hiển thị rõ ràng.
- Lọc theo PID hoặc tên tiến trình: Gõ / để tìm nhanh.
- Sắp xếp theo %CPU hoặc %MEM: Dùng phím F6 hoặc bấm chuột.
- Kill nhanh process treo: Chọn tiến trình rồi nhấn F9.
Mẹo: Nếu thấy 1 tiến trình PHP chiếm CPU 100% liên tục, có thể do vòng lặp vô hạn trong code hoặc do bot tấn công.
3. Kiểm tra I/O Disk bằng iotop
Disk I/O cũng là nguyên nhân phổ biến khiến server ì ạch – đặc biệt khi database hoặc cache hoạt động mạnh.
sudo iotop
Lưu ý: iotop cần quyền root mới đo được đầy đủ.
Quan sát:
- DISK READ / WRITE: Cho biết tiến trình nào đang đọc/ghi dữ liệu nhiều.
- Sắp xếp bằng < hoặc >: Xem tiến trình chiếm nhiều I/O nhất.
- Đặc biệt chú ý: Các tiến trình như
mysqldhoặcphp-fpmnếu liên tục write nhiều → có thể do truy vấn nặng hoặc ghi log quá mức.
4. Một số ví dụ thực tế
| Hiện tượng | Cách xác định | Giải pháp |
|---|---|---|
| CPU 100% | htop → tìm tiến trình PHP/MySQL ngốn nhiều CPU |
Tối ưu truy vấn, kiểm tra loop vô hạn, block bot |
| Load cao dù CPU thấp | iotop → check disk write của mysqld |
Tối ưu chỉ mục DB, giảm ghi log |
| RAM đầy | htop → sort theo %MEM |
Tăng RAM, bật swap, tối ưu cache |
Kết luận
htop và iotop là hai công cụ nhẹ, dễ dùng, cực kỳ hữu ích trong việc xác định nhanh chóng điểm nghẽn hệ thống. Kết hợp với các công cụ như top, vmstat, hoặc dstat, bạn có thể hiểu rõ và tối ưu hệ thống mà không cần công cụ phức tạp.
Bình luận