HALO 개발팀이 이야기 하는 클라우드 기반의 게임 아키텍처

세미나 내용을 간략히 중요한 것만 나열하였습니다.

HALO 서비스 아키텍쳐
by Joseph Cusimano, Xbox Software Engineering Lead

  • Cloud Augmented Gaming
  • Cloud Powered game worlds
  • Xbox Live Compute 소개
  • SDK & Tools
  • Auto-deploy
  • Discovery 기능
  • Dynamic Scale
  • QoS
  • Manageability
  • 클라우드컴퓨팅 이용에 대한 일반적인 이점 설명
  • CRACKDOWN 3(내년 출시 예정작) 데모
  • 많은 physics servers
  • 건물들을 나눠서 여러 physics server에게 분배
  • FPS가 거의 떨어지지 않음
  • server-side rendering vs local rendering
  • Capacity challenges
  • Big launch with tail off
  • Growing Fast
  • Unpredictable Bursting
  • Predictable Bursting
  • Game Host Pooling
  • Reserved hosts
  • Standby hosts
  • Active hosts
  • Runtime environment
    *
  • 오늘날의 사용량
  • 38 Data center 사용중
  • 하루 UV 300만 이상
  • 월간 4천 5백만 compute hours

Meet Master Chief!
by Andrew Hesky, Engineering Manager, Halo services (343 Industries)

HALO Wars 2 Trailer play (March 2017)

Instroduction

Azure based services

  • 12개 이상의 클라우드 서비스로 25개 이상의 유니크 롤을 운영
  • Thunderhead hosted dedicated server per match
  • Halo 5 런치
  • 1분 안에 10만 명의 유저가 접속
  • 60 Billion
  • 큰 게임 런치의 패턴
  • Huge traffic spike on launch
  • Downtime at launch is really bad

Cloud Native Services (Cloud Native란 표현이 참신)

  • Halo stack
  • Communication은 HTTP, AMQP, WebSocket
  • Actor Model
  • Project "Orleans" (GitHub)
  • Distributed Actor runtime
  • Virtual Actor Model
  • Location transparency
  • Grain = single actor
  • Silo = runtime execution container
  • Silo 모여 Cluster 형성
  • A cloud native runtime
  • The Observer Pattern
  • Observable -> Observer
  • Observer가 Subscribe하면 Event를 받을 수 있음

How we use Halo data

  • Hot Path
  • Customer facing stats and rewards
  • Warm Path (1 min)
  • Service Health
  • Live Debugging
  • Cold Path
  • TiP
  • BI
  • User Research / Playtest

Guiding Tenets (교리)

  • Collect as much data as you can
  • Have processes to validate the data
  • Use your production systems during development
  • Automate everything

What's Next

  • Kusto (Application Insights Analytics)
  • Advanced ?
  • Machine Learning