Hiệu năng hệ thống trong Linux



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 Linux

Dưới đây liệt kê 5 thành phần chính:

Thành phầnMiêu tả
Trạng thái CPU người sử dụngLượ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ụngThờ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 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ệnhMiê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.
timeLượng thời gian một lệnh đơn hoặc cung cấp cách sử dụng nguồn.
uptimeTrung bình tải hệ thống (SLA – System Load Average)
psBáo cáo một ảnh chụp nhanh (snapshot) của các tiến trình hiện tại.
vmstatBáo cáo các thống kê về bộ nhớ ảo.
gprofHiển thị gọi đồ thị dữ liệu profile.
profTiến trình profile
topHiển thị các nhiệm vụ của hệ thống.

Các bài học UNIX phổ biến khác tại VietJack: