Giải pháp cho Game Studio

Ngày ra mắt là lúc hạ tầng bị thử thách nặng nhất và ít được làm lại nhất

HiTechCloud nhận phần hạ tầng vận hành game: nơi chạy máy chủ trận đấu, lớp lưu trạng thái người chơi, cân bằng tải, mở rộng tự động và phân phối bản cập nhật. Phần làm game nằm ở trang dịch vụ phát triển game.

Phạm vi
Máy chủ · Trạng thái · Phân phối · Vận hành
Vị trí hạ tầng
Trung tâm dữ liệu tại Việt Nam
Đặc thù tải
Đỉnh vào ngày ra mắt và các đợt sự kiện
Yêu cầu vận hành
Trực theo giờ chơi, không theo giờ hành chính
Tổng quan

Hạ tầng game hỏng theo cách khác với hạ tầng doanh nghiệp

Một hệ thống doanh nghiệp chậm thì người dùng chờ. Một trận đấu chậm thì người chơi rời đi và viết đánh giá. Vì vậy tiêu chí ở đây không phải công suất tổng mà là độ trễ ổn định, khả năng dựng thêm phòng chơi trong vài phút, và chuyện gì xảy ra với trạng thái người chơi khi một máy chủ chết giữa trận.

Đường tải cũng khác: gần như phẳng trong thời gian dài rồi dựng đứng vào ngày ra mắt, ngày mở máy chủ mới hoặc ngày chạy sự kiện. Mua sẵn theo đỉnh nghĩa là trả tiền cho phần nằm im nhiều tháng; mua theo mức thường nghĩa là hỏng đúng ngày quan trọng nhất của cả năm.

HiTechCloud dựng phần nền theo đúng hình dạng đó: Cloud ServerBare Metal GPU cho phần cần hiệu năng thô, vDB Redis cho trạng thái phiên chơi và bảng xếp hạng, Load Balancer cùng Auto Scaling cho phần chịu tải, vKS Kubernetes khi phòng chơi được dựng và huỷ liên tục, và vCDN để phát bản cập nhật. Phần thiết kế và lập trình game nằm ở dịch vụ phát triển game.

Vấn đề thường gặp

Những gì studio thường vướng

Ngày ra mắt vượt xa mọi tính toán

Lượng người chơi đăng nhập trong giờ đầu tiên thường cao hơn dự tính nhiều lần, và đó cũng là lần duy nhất không được phép hỏng.

Trạng thái người chơi nằm trong bộ nhớ máy chủ trận

Khi một máy chủ chết giữa trận, phần trạng thái chưa kịp ghi xuống bị mất và người chơi mất tiến độ, kéo theo khiếu nại và bồi thường.

Bản cập nhật làm nghẽn đường truyền

Mỗi bản vá vài gigabyte được hàng nghìn người tải cùng lúc, làm nghẽn chính đường truyền phục vụ người đang chơi.

Không có ai trực vào giờ đông người chơi

Giờ cao điểm của game là buổi tối và cuối tuần, đúng lúc đội kỹ thuật nội bộ đã nghỉ.

Dịch vụ

Phạm vi hạ tầng HiTechCloud đảm nhận

Máy chủ chạy trận đấu

Cloud Server và máy chủ chuyên dụng cho phần cần hiệu năng ổn định; Bare Metal GPU cho phần xử lý đồ hoạ hoặc mô phỏng nặng.

Lớp lưu trạng thái người chơi

vDB Redis giữ phiên chơi, hàng chờ ghép trận và bảng xếp hạng ở lớp riêng, tách khỏi bộ nhớ của máy chủ trận.

Cân bằng tải và mở rộng tự động

Load Balancer phân phối kết nối, Auto Scaling dựng thêm và thu bớt máy chủ theo lượng người chơi thực tế.

Nền dựng và huỷ phòng chơi

vKS Kubernetes cho mô hình phòng chơi được tạo và xoá liên tục, giúp tận dụng tài nguyên giữa các khung giờ.

Phân phối bản cập nhật và tài nguyên game

vCDN đưa bản vá và tài nguyên ra gần người chơi, tách khỏi đường truyền phục vụ trận đang chạy; Cloud Object Storage giữ kho bản dựng.

Bảo vệ, giám sát và trực hệ thống

vWAF lọc lưu lượng vào cổng dịch vụ và cổng thanh toán; vMonitor Platform giám sát chỉ số; Managed Services trực theo khung giờ đông người chơi.

Không gian làm việc của một studio phát triển game
Nguyên tắc triển khai

Diễn tập ngày ra mắt trước khi ngày ra mắt đến

Trước mỗi mốc lớn, hạ tầng được chạy thử với lượng kết nối mô phỏng ở mức cao hơn dự kiến, để tìm điểm gãy trong phòng thử thay vì tìm trên người chơi thật.

  • Chạy thử tải theo kịch bản giờ đầu tiên sau khi mở đăng nhập.
  • Kiểm tra hành vi khi một máy chủ trận bị tắt đột ngột.
  • Chuẩn bị sẵn cấu hình mở rộng và người trực trong suốt mốc ra mắt.
  • Rà lại số liệu sau sự kiện để chỉnh tham số cho đợt kế tiếp.
Quy trình

Cách một dự án hạ tầng game được triển khai

  1. 01

    Khảo sát kiến trúc game

    Xem cách máy chủ trận, hệ thống ghép trận và cơ sở dữ liệu người chơi đang gắn với nhau, và trạng thái nào đang nằm trong bộ nhớ.

  2. 02

    Tách trạng thái khỏi máy chủ trận

    Đưa phiên chơi, hàng chờ và bảng xếp hạng sang lớp lưu trữ riêng để máy chủ trận có thể bị thay mà không mất tiến độ.

  3. 03

    Dựng hạ tầng và quy tắc mở rộng

    Thiết lập cân bằng tải, ngưỡng mở rộng tự động và giới hạn trần, kèm phân phối bản cập nhật tách khỏi đường phục vụ trận.

  4. 04

    Diễn tập tải và diễn tập sự cố

    Chạy thử ở mức cao hơn dự kiến, thử tắt đột ngột một thành phần và đo lại thời gian phục hồi thực tế.

  5. 05

    Vận hành theo lịch sự kiện

    Trực theo khung giờ đông người chơi, chuẩn bị năng lực trước mỗi đợt sự kiện và thu lại sau đó.

Thiết bị và môi trường kiểm thử của studio
Bản quyền và tài sản số

Bản dựng và tài nguyên game là tài sản cần được kiểm soát

Mã nguồn, bản dựng và tài nguyên đồ hoạ là đối tượng được bảo hộ theo pháp luật về quyền tác giả, nên việc ai truy cập được vào kho bản dựng cũng là một phần của hạ tầng.

  • Kho bản dựng và tài nguyên đặt riêng, phân quyền theo vai trò trong studio.
  • Mọi lần tải xuống và phát hành đều để lại nhật ký.
  • Bản sao kho bản dựng được giữ ở vùng hạ tầng khác với vùng vận hành.
Khách hàng

Giải pháp này phù hợp với ai

Studio chuẩn bị phát hành tựa game mới

  • Ngày ra mắt là mốc không được phép hỏng và không làm lại được.
  • Chưa biết lượng người chơi thật nên không dám mua sẵn theo đỉnh.
  • Cần người trực cùng trong những ngày đầu.

Đơn vị phát hành và vận hành game

  • Nhiều tựa game chạy song song, cần tách tài nguyên và phân quyền theo từng tựa.
  • Đợt sự kiện định kỳ đẩy tải lên rồi hạ xuống.
  • Bản cập nhật lớn làm nghẽn đường truyền chung.

Studio làm game trên nền máy chủ trận

  • Trạng thái người chơi đang nằm trong bộ nhớ máy chủ trận.
  • Phòng chơi được tạo và huỷ liên tục, tài nguyên khó tận dụng.
  • Cần độ trễ ổn định cho người chơi trong nước.
Hỏi đáp

Câu hỏi thường gặp

HiTechCloud có làm game không?

Phần thiết kế và lập trình game nằm ở dịch vụ phát triển game, là một trang riêng. Trang này chỉ nói về hạ tầng vận hành: máy chủ, lớp trạng thái, cân bằng tải, mở rộng và phân phối bản cập nhật.

Độ trễ tới người chơi là bao nhiêu?

Trang này không nêu con số vì độ trễ phụ thuộc vào nhà mạng của người chơi, vị trí và chính cách game truyền dữ liệu. Cách làm của HiTechCloud là đo thật từ nhiều nhà mạng trong giai đoạn thử nghiệm rồi đưa số đã đo vào hợp đồng.

Hạ tầng có chịu được ngày ra mắt không?

Đó là bài toán được xử lý bằng diễn tập tải trước ngày ra mắt, cấu hình mở rộng tự động có ngưỡng và trần rõ ràng, cùng người trực trong suốt mốc đó. HiTechCloud không cam kết một con số người chơi đồng thời khi chưa đo trên chính bản dựng của Quý khách.

Máy chủ đặt ở đâu?

Tại trung tâm dữ liệu ở Việt Nam do đối tác vận hành, phù hợp với người chơi trong nước. Tiêu chuẩn của trung tâm dữ liệu là tiêu chuẩn do đơn vị vận hành công bố.

Chi phí tính thế nào?

Tính theo tài nguyên sử dụng, mở rộng trong đợt cao điểm và thu lại sau đó; phần phân phối bản cập nhật tính riêng theo lưu lượng. Báo giá lập sau bước khảo sát kiến trúc. Giá chưa bao gồm VAT.

Bắt đầu từ một buổi diễn tập tải

Liên hệ để đội ngũ HiTechCloud rà soát kiến trúc hiện tại và dựng một đợt chạy thử tải trước mốc ra mắt kế tiếp.