When there are no free threads from the RTC thread pool to handle connection requests for a relatively long time (time depends on WinSock API), new connection requests will get "refused".
If your Server needs to handle thousands of active connections and the events you wrote on the Server (for example, the OnExecute event to handle remote function calls) take a rather long time to complete, there are two things you can do:
1) If your Server has a lot of free CPU time and enough memory to handle all these clients, simply increase the RTC thread pool size (see the "rtcThrPool.pas" unit for all variables you can set in your code).
2) If your Server is under heavy load and increasing the RTC thread pool size does not help, you will have to use more Servers (install the Server app on more PCs) and place a Load-Balancer before them so that all traffic from Clients will first go to a Load Balancer and then be forwarded to one of your Servers (depending on their load).
PS. For questions about subscriptions, please contact me directly by E-Mail:
Best Regards,
Danijel Tkalcec