Mục đích của chương hướng dẫn này là giới thiệu phân tích hiệu năng bằng các công cụ có sẵn để giám sát và quản lý hiệu năng trên các hệ thống Unix, và để cung cấp một nguyên tắc chỉ đạo chung về cách để phát hiện và sửa các vấn đề về hiệu năng trong môi trường Unix. Unix có các kiểu nguồn chính sau mà cần được giám sát kiểm tra và được bật lên:
- CPU
- Bộ nhớ
- Không gian đĩa
- Các dây dẫn giao tiếp
- I/O Time
- Thời gian mạng
- Các chương trình ứng dụng
Các thành phần hiệu năng trong Unix/Linux
Dưới đây liệt kê 5 thành phần chính:
Thành phần | Miêu tả |
---|---|
Trạng thái CPU người sử dụng | Lượng thời gian thực tế mà CPU dành để chạy chương trình của người sử dụng trong trạng thái người dùng. Nó bao gồm thời gian dành để chạy các triệu hồi thư viện, nhưng không bao gồm thời gian dành trong Kernel. |
Trạng thái CPU hệ thống | Lượng thời gian mà CPU dành cho chương trình này trong trạng thái hệ thống. Tất cả chương trình I/O yêu cầu các sự phục vụ Kernel. Người viết chương trình có thể ảnh hưởng giá trị này bằng cách sử dụng khóa kết nối I/O. |
Thời gian I/O và mạng hệ thống | Lượng thời gian dành cho di chuyển dữ liệu và phục vụ các yêu cầu I/O. |
Hiệu năng bộ nhớ ảo | Nó bao gồm sự chuyển mạch và trao đổi bối cảnh. |
Chương trình ứng dụng | Thời gian dành cho chạy các chương trình khác – khi hệ thống không phục vụ ứng dụng này bởi vì ứng dụng khác hiện tại đang có trong CPU. |
Các công cụ hiệu năng trong Unix/Linux
Unix cung cấp các công cụ quan trọng để đo lường và tinh chỉnh hiệu năng hệ thống:
Lệnh | Miêu tả |
---|---|
nice/renice | Chạy một chương trình với quyên ưu tiên được sửa đổi trước. |
netstat | In các kết nối mạng hệ thống, bảng định tuyến, các thống kê giao diện, các kết nối ẩn danh và các thành viên multicast. |
time | Lượng thời gian một lệnh đơn hoặc cung cấp cách sử dụng nguồn. |
uptime | Trung bình tải hệ thống (SLA – System Load Average) |
ps | Báo cáo một ảnh chụp nhanh (snapshot) của các tiến trình hiện tại. |
vmstat | Báo cáo các thống kê về bộ nhớ ảo. |
gprof | Hiển thị gọi đồ thị dữ liệu profile. |
prof | Tiến trình profile |
top | Hiển thị các nhiệm vụ của hệ thống. |
Bạn có thể truy cập vào Trang trợ giúp (Manpage Help) để kiểm tra cú pháp đầy đủ cho mỗi lệnh được đề cập ở đây