GoDaddy Trợ giúp

Chúng tôi đã cố hết sức để dịch trang này cho bạn. Trang Tiếng Anh cũng có khả dụng.

Xem lại CPU và bộ nhớ trên máy chủ Linux của bạn

Các tài nguyên như CPU và bộ nhớ (RAM) là một phần không thể thiếu trong chức năng của trang web. Nếu mã của bạn sử dụng quá nhiều, trang web có thể trở nên chậm chạp hoặc ngừng hoạt động hoàn toàn. Tất cả các quy trình khác (như email) chia sẻ cùng tài nguyên với các trang trên máy chủ của bạn. Bất kỳ quá trình nào chiếm nhiều hơn tỷ lệ chia sẻ công bằng (dự kiến) của chúng, đều có thể khiến máy chủ bị sập hoàn toàn.

Tại sao tôi cần kiểm tra việc sử dụng tài nguyên?

  • Trang điều khiển cơ sở dữ liệu của bạn (như WordPress) chậm.
  • Sẽ mất nhiều thời gian để gửi email.
  • Trang của bạn hiển thị lỗi hoặc chỉ quay
  • Các tác vụ được thực hiện trên máy chủ của bạn mất nhiều thời gian hơn bình thường (như sao lưu).

Làm thế nào để kiểm tra việc sử dụng tài nguyên?

Linux cung cấp một số công cụ để điều tra việc sử dụng CPU và bộ nhớ như top , sarwatch .

Lệnh trên cùng cho phép bạn xem các tác vụ hệ thống đang chạy trong thời gian thực. Bạn có thể xem thông tin tổng thể như thời gian hoạt động, tải trung bình, mức sử dụng CPU và bộ nhớ. Công tắc -c cho phép bạn xem tên chương trình trong COMMAND. Để có danh sách đầy đủ các phím tắt, hãy sử dụng man top trong SSH.

[root @ server ~] $ top -c top - 15:08:23 lên 115 ngày, 6:37, 2 người dùng, tải trung bình: 1,76, 1,35, 1,13 Tác vụ: tổng cộng 330, 1 đang chạy, 326 đang ngủ, 0 đã dừng, 3 Cpu zombie: 0,7% us, 2,9%s y, 0,0% ni, 81,5% id, 14,9% wa, 0,0% hi, 0,1%s i, 0,0%s t Mem: tổng cộng 32754672k, đã sử dụng 28808088k, miễn phí 3946584k, 321260k bộ đệm Hoán đổi: tổng cộng 8388604k, 25992k đã sử dụng, 8362612k còn trống, 8140560k trong bộ nhớ đệm PID USER PR NI VIRT RES SHR S% CPU% MEM TIME + COMMAND 6926 mysql 20 0 130g 22m S 12.0 16g 52,2 27065: 56 / usr / sbin / mysqld --basedir = / usr --datadir = / var / lib / mysql --plugin-dir = / usr / lib64 / mysql / plugin 2454 td-agent 20 0 1210m 160m 2440 S 0,7 0,5 347: 19,48 / opt / td-agent / nhúng / bin / ruby -Eascii-8bit: ascii-8bit /

Báo cáo hoạt động hệ thống (sar) là một công cụ giúp bạn theo dõi số liệu thống kê sử dụng máy chủ của mình. Sar là một phần của gói sysstat . Chỉ sử dụng lệnh sar sẽ cung cấp cho bạn số liệu thống kê trong 24 giờ qua.

sar -f cho phép bạn xem các tập tin nhật ký lịch sử bắt đầu từ 12:00 sáng trong ngày.

[root @ server ~] $ sar -f / var / log / sa / sa10 Linux 2.6.32-042stab141.3 (server-hostname.net) 01/10/2022 _x86_64_ (24 CPU) 12:00:01 AM CPU % người dùng% tốt đẹp%s ystem% iowait%s % màu xanh lơ 12:10:01 sáng tất cả 1,92 0,00 0,39 0,00 0,00 97,69 12:20:01 sáng tất cả 1,63 0,00 0,34 0,00 0,00 98,02 12:30:01 sáng tất cả 1,64 0,00 0,41 0,00 0,00 97,94 12:40:01 sáng tất cả 2,85 0,00 0,61 0,00 0,00 96,54 12:50:01 sáng tất cả 2,71 0,00 0,57 0,01 0,00 96,72 01:00:01 sáng tất cả 2,02 0,00 0,38 0,00 0,00 97,60 01:10:01 sáng tất cả 1,43 0,00 0,30 0,00 0,00 98,27

sar -r sẽ hiển thị số liệu thống kê về bộ nhớ còn trống và đã sử dụng

[root @ server ~] $ sar -r Linux 2.6.32-042stab141.3 (server-hostname.net) 02/02/2022 _x86_64_ (24 CPU) 12:00:01 AM kbmemfree kbmemused% memused kbbuffers kbcached kbcommit% commit 12:10:01 AM 99454800 32354304 24.55 1429856 22624260 8285744 5.91 12:20:01 AM 99760972 32048132 24.31 1429884 22631184 7960428 5.68 12:30:01 AM 99751920 32057184 24.32 1429920 22638392 7974804 5.69 12:46 14299 996380319429910 8035000 5.73 12:50:01 AM 99752696 32056408 24.32 1430012 22644804 7891100 5.63

Đồng hồ Linux cho phép bạn xem các lệnh hoặc tác vụ khi chúng hoàn thành hoặc thực thi. watch "mysql -e'show full processlist; '" sẽ hiển thị tất cả các truy vấn mysql đang chạy, cập nhật 2 giây một lần.

Mỗi 2.0s: mysql -e'show danh sách quy trình đầy đủ; ' Thứ bảy, ngày 12 tháng 2 11:09:56 2022 Id Máy chủ lưu trữ người dùng db Thời gian lệnh Thông tin trạng thái 26574057 mysql_db1 localhost mysql_db1 Truy vấn 2 Gửi dữ liệu SELECT * từ db_data_main trong đó DOT_NUMBER = 1381207 26574063 mysql_db1 localhost mysql_db1 Truy vấn 180BER40 trong đó DOT_NUMBER40 gửi dữ liệu trong đó SELECT * từ db mysql_wp3 localhost mysql_wp3 Sleep 0 NULL 26574068 root localhost NULL Truy vấn 0 init hiển thị danh sách xử lý đầy đủ

Các bước tiếp theo

Việc sử dụng tài nguyên cao có thể là nguyên nhân một lần do lưu lượng truy cập độc hại hoặc quá trình bị treo (như một bản sao lưu lớn). Việc sử dụng tài nguyên cao thường xuyên không phải do lưu lượng truy cập hoặc quá trình bị treo chỉ có thể được giải quyết thông qua tối ưu hóa hoặc nâng cấp. Hãy nhớ rằng nếu bạn không tối ưu hóa máy chủ và trang của mình, việc nâng cấp chỉ là một giải pháp tạm thời .

Dấu hiệu cho thấy có thể đã đến lúc cần tối ưu hóa (máy chủ và (các) trang)

  • Không phải do lưu lượng truy cập độc hại
  • Mã trang đã lỗi thời / tạo ra lỗi không dùng nữa
  • Mức sử dụng CPU cao nhưng mức sử dụng bộ nhớ thấp.
  • Truy vấn MySQL bị trễ khi lưu lượng truy cập tăng

Dấu hiệu đã đến lúc cần nâng cấp

  • Lưu lượng truy cập vào (các) trang của bạn đang tăng đều đặn
  • Máy chủ đã được tối ưu hóa cho nhu cầu trang của bạn
  • Bạn đã tối ưu hóa (các) trang của mình bằng cách loại bỏ các truy vấn mysql dài và cập nhật mã để hỗ trợ các phiên bản PHP mới hơn.
  • Bạn đang sử dụng bộ nhớ đệm (như Memcache) nhưng tải vẫn cao