Is there any way to stress test GameLift Server?

Hi. I’m using GameLift to make my own game. (Using Unreal Engine 4)
I want to stress test AWS GameLift Fleet. Want to findout How many PlayerSession can hold by 1 GameSession. And how many GameSession can single fleet can hold ?

Is there any way to do it ?

Hi @Kioni,

There is a default limit of 200 players in a game session (doc), and there is a hard limit of 50 concurrent processes (1 process = 1 game session) in a fleet instance (doc). There is a default limit of 20 instances per fleet. However, number of instances per fleet is much easier to approve, so in theory you could have infinite number of instances per fleet, and therefore infinite number of game sessions per fleet.

However, realistically, depends on your player traffic, you may not be granted that many instances in a fleet.

Also, 50 is the cap of concurrent processes. Depends on the computing power of your instance type and how intensive and optimized your server is, you may not even reach the cap of 50.

One good way to stress test is, start with 1 fleet, 1 instance and 1 to 5 concurrent processes, create game sessions on them, connect players to them, and then monitor the CPU/network IO/Memory usage on the instance (via SSHing to the fleet and run top, or use GameLift AWS console), then add more processes or players until you reached desired amount of saturation.

Thank you very much.

I got 2 more question and hope can help out please…

So according to

There is a default limit of 200 players in a game session (doc), and there is a hard limit of 50 concurrent processes (1 process = 1 game session) in a fleet instance (doc). There is a default limit of 20 instances per fleet. However, number of instances per fleet is much easier to approve, so in theory you could have infinite number of instances per fleet, and therefore infinite number of game sessions per fleet.

Q : If I want to make game like mmoprg which has 1000+ players must be in same GameSession. How can I do that ? Is it possible ?

Second question is

Q : If I want to test or simulate 200 players in same GameSession. Is hardway (200 clients open) is the best way ? Or Is there any test tool or automation to do that ?

  1. GameLift is best suited for session-based multiplayer games (see: Amazon GameLift - FAQ - Amazon Web Services), with finite gameplay time. It is not intended and provides little support for an MMORPG where the game server has to be kept open for months. Little support as in: game session is essentially irrelevant because you’d have to architect your server differently, and you wouldn’t find much use for queues/matchmaking which are large parts of GameLift. It would be much cheaper to maintain your own server, e.g. on EC2, if you want to run a MMORPG.

  2. This is largely dependent on your game. You might want to design your server/client connection to enable headless clients to play the game, so you can easily connect ~200 clients from a single/few machines and execute random/scripted actions to the server.