Announcing Server Prewarming

Great improvement to user experience, a few questions…

  1. How long do prewarmed servers exist before shutting down in the case that no players join?
  2. Do prewarmed servers run server sided game code immediately on start-up? If this is the case, should we be careful for loading game sequences that might require or yield for a player to exist in the game? I don’t see there being many scenarios where this is the case, but better to be safe than sorry.
20 Likes
  1. Currently, up to 5 min (disclaimer: subject to change without notice)
  2. No, we don’t run any of the experience’s code until the first user is about to join to guarantee backwards compatibility. cc @InCrIpTiOnYT who asked a similar question
45 Likes

This is an awesome change, especially for experiences with 1 player servers! Great to see.

One question; does this mean we can no longer trust that joining a ‘new’ server (being the first player in it) will ensure you’re on the latest version of the game (assuming you joined within 5 minutes of a new update being published)? Also, I’m assuming the “Shut Down All Servers” button we use in the case of an update would also shut down these prewarmed servers?

19 Likes

Joining a “new” server is always guaranteed to be the latest published version. If we detect a prewarmed server running an old version we’ll shut it down instead of using it.

“Shut Down All Servers” ignores prewarmed servers. It’s not necessary to shut them down due to the condition above. (Side note - “Shut Down All Servers” is being consolidated with “Migrate to Latest Update.” More info here - Improvements to Updating Experiences)

25 Likes

This is good news for us gamers!

12 Likes

Hi
Does this change anything for server startup speed when using ‘shutdown all’?
Especially when using a method like this: SoftShutdown2 — Shutdown all servers with peace of mind!
That teleports users to a new server on shutdown.

And please decrease the limit in the future. I imagine only about the top 200 or so experiences have a new server start each minute. (Or experiences with low playercounts!)

12 Likes

Great update! Now games will open much faster than before.

10 Likes

Great feature. Now, all we need is a way for players to join newly published servers instead of old servers when we publish! (and optionally press a button to execute this)

9 Likes

This release doesn’t change anything in regards to “Shutdown All”

As for the threshold - we have to be careful not to start too many prewarmed servers since they use our datacenter resources. We’re monitoring the impact and will tune it as needed

14 Likes

I love this!

However, I do wonder how this will behave with servers that end up bricking one way or another. Does this mean players will be stuck leaving and rejoining the prewarmed server, even if new players join the game? Usually, the trick to shut down a “broken” server is to have everyone leave, will prewarming affect this in any way? (That is, assuming the server stays ‘open’ in the background).

8 Likes

Nice, no more doing this manually through hacky methods :melting_face:
Great update!

8 Likes

Prewarmed servers are always new instances. When all players leave they will shut down just like normal.

As a side note - if “bricking” is an issue on Roblox and not from your scripts please open a Bug Report!

8 Likes

Oh, no wonder they’re always the latest pushed update. Thanks!!!

7 Likes

Wow! I did not expect that this will show up that quickly but from now on I see roblox just getting slowly better.

8 Likes

Will a setting exist in the future to have scripts be ran when the prewarming is complete?

9 Likes

How does this work internally? It would be cool to know

9 Likes

I do have to make a comment about the example video, it shows you joining a server that already had players in it, so pre-warming would not apply or were you showing a example of a bunch of players all trying to join the same server at the same time? :face_with_raised_eyebrow:

7 Likes

great job, really impressive!!

9 Likes

@Verorbs No plans for that. We don’t let any scripts run until the first player is about to join, so there’s no “prewarming complete” event to hook into. From a scripts perspective it should just look like a normal server start

@BrannanZ At a high level - prewarming works by looking at the rate of game starts across all experiences and all data center regions and maintaining a pool of prewarmed servers based on that data. We’re constantly guessing what are the next servers that users are going to try to start! Maybe we’ll make a blog post on it someday :slight_smile:

@knightmb1 In both cases I used some admin settings to force a new server, once with prewarming and once without. Blox Fruits is just a popular game so other people joined before my player list even started rendering!

12 Likes

Roblox is making a string of awesome updates lately. Hopefully the list continues getting longer!

9 Likes