Every connection needs a file descriptor (fd: the number the OS gives an open file or socket), and the number of fds one process can open is capped.
Why Concurrent users reach the process’s file descriptor limit → Effect The server can’t accept new connections (Too many open files). Opening log files and DB connections fails too → On screen Past an exact player count, nobody gets in: can’t connect / infinite loading
Right after login or maintenance, When crowds gather
Owner
Primary owner Infra team (Server infrastructure) · Also Game team (Server development)
Game team action items
Always close the socket when a connection ends (to prevent fd leaks), when accept fails with EMFILE (out of fds), pause accepting briefly or accept with a spare fd kept in reserve and close it right away (so the server doesn’t burn CPU handling the same new-connection notification over and over).
Infra team action items
Check ulimit and the service settings (LimitNOFILE in systemd), alert when usage nears the limit.
Ballpark numbers
On Linux, the limit is still often 1,024 unless the service is configured otherwise. Game servers usually raise it to tens of thousands or hundreds of thousands. Windows has no default limit this low.
On the graph
Hits a ceiling · Open fds of the process, concurrent users
Where to look
fd-nr (open file descriptors) of the game server process from pidstat -v, the open-files limit in /proc/PID/limits, and accept failures (EMFILE, Too many open files) in the server log
Confirmed if
The fd count flattens at the limit, and from that moment accept fails with EMFILE
Ruled out if
fd count well below the limit: not this cause. Connection requests dropped in the kernel: “Connection queue (listen backlog) overflow.” Connection tracking involved: “Server conntrack table full”
Check with
Infra tools (no game code needed)
Learn more
Connections that weren’t accepted stay in the kernel’s connection queue (listen backlog), so depending on the code, the server may keep getting “new connection” notifications and waste CPU on them.