Skip to main content

Managed Dedicated Servers

Last updated on

A Managed Dedicated Server is managed by AccelByte Cloud to ensure smooth player experience and maximize your game's performance, especially during multiplayer sessions with many players playing the game at once.

Matchmaking Flow

  1. The player connects to the Lobby service through a WebSocket connection.
  2. The player sends a Matchmaking request to the Lobby service.
  3. The Lobby service acts as a proxy and forwards the incoming message to the Matchmaking service.
  4. When a match is found, the Matchmaking service notifies the Lobby service.
  5. The Lobby service sends a request to the DSM to create a new game session with the match details.
  6. The DSM checks whether a DS pod is available.
  7. If an idle pod is available, the DSM assigns the available DS pod. If there are no idle pods available, the DSM spawns a new DS pod, claims it, and assigns the game to it.
  8. Once complete, the DSM notifies the Lobby service that the session has been created and sends the DS details.
  9. The Lobby service forwards the DS details to the game client.
  10. The game client connects to the server using the DS details.

Prerequisites

Here are the requirements to be able to use a Managed Dedicated Server.

  1. Dedicated Server Build
    • The Dedicated Server must be containerized as a Linux Docker image and uploaded to ECR. You can use our uploader tool to make uploading easier.
    • The Dedicated Server must have IAM client credentials, including permission to call the DSM.
    • The Dedicated Server must perform a client token grant upon startup.
    • The Dedicated Server must call the following DSM endpoints:
      • The Register endpoint to tell the DSM that the DS is ready to accept players.
      • The Heartbeat endpoint periodically, to tell the DSM that the DS is still active. The DSM will respond with matchmaking data if any match has claimed the DS.
      • The Shutdown endpoint to notify the DSM that the matchmaking session is over.
  2. Game Client Build
    • The game client must be capable of making HTTP requests to our backend.
  3. Access to our Admin Portal
    • You must have permission to manage the Statistics config.
    • You must have permission to manage the Matchmaking config.
    • You must have permission to manage the DSM.