한국어English日本語简体中文繁體中文DeutschไทยTiếng ViệtРусскийPortuguês (Brasil)EspañolBahasa Indonesia

Sách trắng lag game › L7 OS server (kernel)

Tác vụ theo lịch Cron jobs (log rotation, backup, scans)

ID nguyên nhân so-cron · Phụ trách chính Hạ tầng server (Đội hạ tầng)

Mở thẻ gốc có hình minh họa và thí nghiệm →

Các tác vụ nén log, sao lưu và quét bảo mật chạy vào cùng một giờ mỗi ngày chiếm CPU và ổ đĩa.

Vì sao Tác vụ của OS chạy vào giờ đã định → Dẫn đến Tác vụ dùng chung CPU và ổ đĩa với server game → Trên màn hình Giật khựng và quay chậm vào giờ cố định, ví dụ 4 giờ sáng mỗi ngày

Triệu chứng
Giật khựng, Quay chậm
Yếu tố
Ngưng trệ
Ai gặp phải
Cả server
Khi nào
Theo chu kỳ đều
Phụ trách
Phụ trách chính Hạ tầng server (Đội hạ tầng)
Việc cần làm (Đội hạ tầng)
Rải giờ chạy tác vụ, hạ mức ưu tiên (nice, ionice), tách khỏi server game (chạy trên server riêng).
Trên đồ thị
Vọt lên theo chu kỳ · Mức sử dụng CPU, hàng đợi ổ đĩa, thời gian tick của server
Chỗ cần xem
Giờ chạy của các tác vụ theo lịch, lấy từ crontab và systemctl list-timers; tiến trình nào dùng CPU và ổ đĩa vào lúc tick vọt lên, xem bằng pidstat -u -d
Đúng nếu
tick vọt lên vào cùng một thời điểm mỗi ngày (hoặc mỗi giờ), và lúc đó tiến trình của tác vụ theo lịch chiếm CPU và ổ đĩa
Loại trừ nếu
thời điểm vọt lên không trùng với một giờ cố định mỗi ngày. Vọt lên cách vài giây hoặc vài phút một lần → “GC dừng toàn bộ server”, “Timer kích hoạt dồn cùng lúc”
Cách kiểm tra
Kiểm tra bằng công cụ hạ tầng (không cần code game)

Nguồn

  1. ionice(1) — Linux manual page util-linux
    Tác vụ thuộc lớp idle chỉ được dùng I/O khi không có chương trình nào khác dùng ổ đĩa
  2. systemd.timer(5) — Linux manual page systemd
    RandomizedDelaySec lùi giờ chạy tác vụ theo lịch một khoảng ngẫu nhiên để giảm dồn tải
  3. systemctl(1) — Linux manual page systemd
    list-timers: liệt kê các timer unit theo thứ tự giờ chạy kế tiếp
  4. pidstat(1) — Linux manual page sysstat
    -u hiển thị CPU, -d hiển thị I/O ổ đĩa theo từng tiến trình

Nguyên nhân nên xem cùng

Cùng tầng: L7 OS server (kernel)

Nguyên nhân ở tầng khác gây cùng triệu chứng (Giật khựng)

Xem thẻ gốc có hình minh họa và thí nghiệm