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

Sách trắng lag game › L13 Kiến trúc và vận hành server

Sự cố server phụ trợ Auxiliary service outage

ID nguyên nhân in-subservice · 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 một server chạy tách riêng khỏi server game như chat, tổ đội, nhà đấu giá gặp sự cố, chỉ riêng tính năng đó ngừng hoạt động.

Vì sao Server dành riêng cho một tính năng bị chậm hoặc chết → Dẫn đến Chỉ yêu cầu của tính năng đó không có phản hồi → Trên màn hình Không chat được, mời tổ đội không phản hồi, sàn giao dịch loading mãi (chiến đấu vẫn bình thường)

Triệu chứng
Nuốt thao tác·rollback, Không vào được·kẹt loading
Yếu tố
Ngưng trệ, Mất gói
Ai gặp phải
Chỉ một tính năng
Khi nào
Thỉnh thoảng bất chợt, Khi đông người
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)
Thiết kế để game vẫn tiếp tục khi tính năng lỗi, hiển thị trạng thái từng tính năng, không dồn nhiều tính năng vào một server trung tâm.
Việc cần làm (Đội hạ tầng)
Health check và cảnh báo cho từng server phụ trợ, dự phòng (redundancy) và tự khởi động lại.
Trên đồ thị
Rớt kết nối hàng loạt · Tỷ lệ yêu cầu thành công theo tính năng, số kết nối và health check của server phụ trợ
Chỗ cần xem
Health check, trạng thái tiến trình và số kết nối của từng server phụ trợ như chat, tổ đội, nhà đấu giá; tỷ lệ thành công và thời gian phản hồi theo tính năng. Nếu nằm sau bộ cân bằng tải: UnHealthyHostCount của target group
Đúng nếu
chỉ server phụ trách tính năng bị báo lỗi có health check thất bại hoặc số kết nối tụt mạnh, còn tick và chiến đấu trên server game vẫn bình thường
Loại trừ nếu
nhiều tính năng cùng đứng một lúc → xem server trung tâm chuyển tiếp chung các tính năng đó hoặc sự cố dây chuyền
Cách kiểm tra
Kiểm tra bằng công cụ hạ tầng (không cần code game)
Tìm hiểu thêm
Nếu cấu trúc có một server trung tâm (server world hoặc server manager) chuyển tiếp mọi thứ như tổ đội, guild, tin nhắn riêng, di chuyển giữa các server, thì chỉ cần server đó chậm là nhiều tính năng cùng đứng lại một lúc.

Nguồn

  1. Bulkhead Pattern Microsoft Azure
    Cô lập các thành phần vào pool riêng thì khi một thành phần hỏng, phần còn lại vẫn chạy và sự cố không lan ra
  2. REL05-BP01 Implement graceful degradation to transform applicable hard dependencies into soft dependencies AWS
    AWS Well-Architected. Thiết kế để khi thành phần phụ thuộc gặp sự cố, tính năng cốt lõi vẫn chạy tiếp bằng dữ liệu hơi cũ hoặc dữ liệu thay thế
  3. CloudWatch metrics for your Network Load Balancer AWS
    UnHealthyHostCount: số target bị health check xác định là không khỏe

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

Cùng tầng: L13 Kiến trúc và vận hành server

Nguyên nhân ở tầng khác gây cùng triệu chứng (Nuốt thao tác·rollback)

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