Gần đây tôi đã thiết lập một VPS thực sự rẻ, chủ yếu cho mục đích sao lưu nhưng tôi cũng muốn nó thực hiện một số nhiệm vụ nhỏ, nhỏ. Nhưng vì quá hứng thú nên tôi muốn xem qua việc sử dụng CPU và Bộ nhớ, vì tôi chỉ có (có lẽ là một phần) 1 Lõi CPU không xác định và 128 MB RAM, chạy Ubuntu 16.04 LTS. Tôi đã tạo một cronjob gọi PHP Script để kiểm tra mức sử dụng CPU và bộ nhớ và nếu ít nhất một trong hai mức cao, nó sẽ ghi thông tin vào một tệp. Tôi sử dụng các lệnh systeminfo của PHP để kiểm tra tải CPU và MEM và sau đó sử dụng lệnh này để có thêm thông tin về các quy trình sử dụng tối đa CPU.
Nhưng vì một số lý do, nó xuất ra điều này:
27.05. 20:05:12 CPU:109% - RAM:72.11%
ps: 1.0 6556 php
ps: 0.5 6518 /usr/sbin/mysqld
ps: 0.0 1 init
28.05. 00:02:43 CPU:288% - RAM:39.45%
ps: 0.1 19968 /usr/sbin/mysqld
ps: 0.0 1 init
ps: 0.0 2 [kthreadd/6457]
28.05. 00:05:01 CPU:158% - RAM:49.24%
ps: 0.1 20046 /usr/bin/python3
ps: 0.0 1 init
ps: 0.0 2 [kthreadd/6457]
Vì vậy, tôi đã nhận được ngày và thời gian, việc sử dụng CPU và MEM bằng PHP và bên dưới thông tin từ lệnh ps: CPU tải, PID và lệnh. Tôi có phải nhân số lượng tải CPU lên 100 để có được% hay tại sao những con số này quá thấp, khi rõ ràng CPU đôi khi tải ở mức 288%. Hoặc là hành vi bình thường này đối với VPS và PHP đang đo tải CPU thực của toàn bộ hệ thống trong khi ps chỉ hiển thị tải của phần CPU của tôi hoặc theo cách khác?
Ai đó có thể giải thích?
top
- sử dụng kernel có thể không hiển thị. Và công cụ đó là một chút tinh ranh. Công cụ tiêu chuẩn FTW. htop là gọn gàng nhưng trong trường hợp này ... hoàn toàn đi đầu
w
? Làm thế nào về cài đặtsysstat
và sau đó kích hoạt nó và chạycar -q
? Vấn đề với tập lệnh quickie mà bạn đang chạy là dường như không có nhiều yếu tố thiết lập CPU. Có nghĩa là, nếu bạn có một thiết lập CPU quad và một quá trình đang chạy, nó có thể đạt mức 100% khá thường xuyên. Nhưng tôi đã kiểm tra trung bình tải thông quaw
tải sẽ thấp.