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

Sách trắng lag game › L9 Tiến trình game phía server

Server crash Server process crash

ID nguyên nhân sp-crash · Phụ trách chính Phát triển server (Đội phát triển game) · Phối hợp Hạ tầng server (Đội hạ tầng)

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

Khi tiến trình server chết vì một lỗi không được xử lý, mọi người trên server đó mất kết nối cùng lúc.

Vì sao Lỗi nghiêm trọng như tham chiếu tới thứ không tồn tại (null reference), dữ liệu sai, hết bộ nhớ → Dẫn đến Tiến trình server (hoặc zone) kết thúc → Trên màn hình Mọi người cùng mất kết nối, tiến độ từ lần lưu cuối có thể bị rollback

Triệu chứng
Mất kết nối, Nuốt thao tác·rollback
Yếu tố
Ngưng trệ
Ai gặp phải
Một địa điểm hoặc kênh, Cả server
Khi nào
Thỉnh thoảng bất chợt, Khi làm một thao tác nhất định
Phụ trách
Phụ trách chính Phát triển server (Đội phát triển game) · Phối hợp Hạ tầng server (Đội hạ tầng)
Việc cần làm (Đội phát triển game)
Phân tích crash dump để sửa nguyên nhân, lưu thường xuyên.
Việc cần làm (Đội hạ tầng)
Tự động khởi động lại tiến trình, dựng môi trường thu thập và lưu trữ crash dump, cảnh báo ngay khi server sập.
Trên đồ thị
Rớt kết nối hàng loạt · Số kết nối, số lần tiến trình khởi động lại
Chỗ cần xem
Bản ghi core dump trong coredumpctl list (thời điểm, PID, tín hiệu kết thúc) và bản ghi kết thúc bất thường, khởi động lại của trình quản lý service (systemd). Với server Windows, xem file dump do WER lưu lại
Đúng nếu
vào lúc số kết nối tụt gần về 0 trong chớp mắt, tiến trình server game kết thúc bất thường và có core dump
Loại trừ nếu
tiến trình vẫn sống mà kết nối bị ngắt → thiết bị mạng hoặc idle timeout. Có bản ghi watchdog khởi động lại sau khi treo lâu → vòng lặp vô hạn hoặc deadlock
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. Collecting User-Mode Dumps Microsoft
    Cấu hình Windows Error Reporting (WER) để thu full dump hoặc mini dump về máy cục bộ khi chương trình user mode bị crash
  2. systemd.service(5) — Linux manual page systemd
    Restart=on-failure tự khởi động lại service khi kết thúc bất thường, bị tín hiệu kết thúc (kể cả có core dump) hoặc quá thời gian watchdog; khuyến nghị cho service chạy lâu dài
  3. coredumpctl(1) — Linux manual page systemd
    list truy vấn các core dump do systemd-coredump lưu, hiển thị thời điểm crash, PID và tín hiệu gây crash

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

Cùng tầng: L9 Tiến trình game phía server

Nguyên nhân ở tầng khác gây cùng triệu chứng (Mất kết nối)

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