Tencent Cloud
Tencent Cloud
Game Server Engine

Game Server Engine

A stable, secure, elastic, and high-performance hosting service for stateful game servers

Contact Sales

Overview

Tencent Cloud Game Server Engine (GSE) provides dedicated game server hosting services for the deployment and scaling of stateful games. It supports service discovery, flexible server scaling, and optimal resource scheduling. GSE helps developers quickly build a stable and low-latency deployment environment for multiplayer games while reducing OPS costs. It can be used to deploy and run Unreal and Unity game engines, as well as server frameworks written in C#, C++ or any language that supports gRPC. It is ideal for stateful games that need to remember data such as battle servers and push notifications in FPS, MOBA, turn-based games, MMORPG, table games, and more.

Benefits

Real-Time Scaling

Real-Time Scaling

All games have peak and off-peak hours. With GSE, you can set a selected instance type and a scaling scope, and GSE will auto-scale game servers according to player traffic within the specified scope, enabling you to meet peak demand while eliminating the need to pay for idle servers during off-peak hours.
Stateful Reduction Supported

Stateful Reduction Supported

GSE does not remove instances with running processes. When the server load drops and reduction is triggered, GSE will inform the game processes that the server is being removed and prevent new game server sessions from being assigned to said server. However, it will not forcibly terminate the instance, which may cut client connections. The instance will be removed only after the game processes initiate an end command.
Health Check for Guaranteed Service Stability

Health Check for Guaranteed Service Stability

Health check is performed on servers, and the runtime environment is monitored in real time. If a server fails, it will be deallocated, and traffic will be rescheduled to other servers in a matter of seconds. No manual OPS is required. If a massive failure occurs, the region can be automatically switched based on the speed test result. You can also manually eliminate the faulty region.
Cross-region Deployment for Disaster Recovery

Cross-region Deployment for Disaster Recovery

GSE supports cross-region deployment where server fleets built in multiple regions make up a queue. When the queue is requested, the system will automatically select a server fleet in a region for player access. When a region fails, the service will be quickly switched to another region.
Zero Downtime Updates

Zero Downtime Updates

GSE supports zero downtime updates. A client can request a server in a server fleet through an alias. When the version is updated, you can create a server fleet and point the alias to the new fleet to implement an update with zero downtime.
Nearby Access

Nearby Access

GSE provides an automated testing tool that evaluates the latency between a client and servers in various regions. It then uses an algorithm to find the nearest server address for the client to access. You can also manually adjust the priorities of server fleets in different regions.
Cross-platform Calls

Cross-platform Calls

GSE can be called across platforms including PCs, mobile devices, and game consoles. It supports running programs complied with Unreal and Unity engines and custom gaming server frameworks in C#, C++, and any language that supports gRPC.
Pay-as-You-Go Billing for Lower Costs

Pay-as-You-Go Billing for Lower Costs

The GSE service is scalable in real time, which can reduce resource usage by 60%. Billing is accurate to the second on an hourly cycle based on actual usage.

Features

Program Deployment and Updates

Program Deployment

  • You can upload code packages and dependencies through GSE, which will deploy your code to the server fleet and start it according to the configuration.

 

Zero Downtime Updates

  • Generally, servers need to be suspended for games updates. By contrast, GSE provides an alias mechanism to implement updates with zero downtime.

 

A/B Test

  • You can easily conduct or end an A/B test with GSE.
Server Instance Management

Auto Scaling

  • Auto scaling is performed once every day: games have peak and off-peak hours. Surges generally happen during noontime and evenings, and demand falls after midnight. With GSE, you can set a selected instance type and a scaling scope, and GSE will auto-scale game servers according to player traffic within the specified scope throughout the day.
  • Stateful reduction: GSE does not remove instances with running processes. When the server load drops and reduction is triggered, GSE will inform the game processes that the server is being removed and prevent new game server sessions from being assigned to said server. However, it will not forcibly terminate the instance, which may cut client connections.. The instance will be removed only after the game processes initiate an end command.

 

Cross-region Deployment

  • GSE supports cross-region deployment where server fleets built in multiple regions make up a queue. When the queue is requested, the system will automatically select a server fleet in a region for player access You can also manually adjust the fleet priority. When a region fails, the service will be quickly switched to another region.

 

Global Release

  • GSE is deployed in Shanghai and North America regions and will be available in more regions soon.
Game Server Session Management

GSE manages and assigns game server sessions. For the service, one game server session represents one gaming round (a battle) or a single service. From the perspective of backend program, one game server session corresponds to one process, which will be started by GSE in advance as configured. Generally, one process matches one session. When a client requests a game server session through TencentCloud API, GSE will assign this session to an idle process.

 

Game Server Session Start

  • When a caller requests a game server session, GSE will assign an idle and healthy process to start the session.

 Game Server Session End

  • When there are no players on a game server session or it is unhealthy, it will end itself or be ended. Logs will be saved before it is ended to facilitate troubleshooting.

 

Nearby Assignment of Game Server Session

  • GSE can select the nearest region to a player based on the network latency.

 

Server Scaling Based on Ratio of Available Game Server Sessions

  • You can configure a game server session buffer for a game server fleet as an auto scaling condition. A game server session buffer is the ratio of available game server sessions.
Monitoring and Logging

The system provides CVM instance monitoring, game server session monitoring, and operation logs.

Program Deployment

  • You can upload code packages and dependencies through GSE, which will deploy your code to the server fleet and start it according to the configuration.

 

Zero Downtime Updates

  • Generally, servers need to be suspended for games updates. By contrast, GSE provides an alias mechanism to implement updates with zero downtime.

 

A/B Test

  • You can easily conduct or end an A/B test with GSE.

Scenarios

Battle server

Use Case:

On a battle server, a battle usually lasts minutes (no more than one hour), and the traffic peaks during noontime and evenings. During the off-peak hours, some servers are not required.

 

Solution:

You can use GSE to add/remove servers instantly during peak/off-peak hours, which will dramatically reduce your server costs. In addition, GSE can assign the nearest access region for each battle, guaranteeing network stability and gaming fair play. GSE is suitable for table, turn-based/strategy, and real-time battle games. You can create a game server session that represents a room or server where players can battle or chat with each other.

Use Case:

On a battle server, a battle usually lasts minutes (no more than one hour), and the traffic peaks during noontime and evenings. During the off-peak hours, some servers are not required.

 

Solution:

You can use GSE to add/remove servers instantly during peak/off-peak hours, which will dramatically reduce your server costs. In addition, GSE can assign the nearest access region for each battle, guaranteeing network stability and gaming fair play. GSE is suitable for table, turn-based/strategy, and real-time battle games. You can create a game server session that represents a room or server where players can battle or chat with each other.

Battle server