HTTPService "Number of requests exceeded limit" does not reset between servers

Update: repro with place file here: HTTPService "Number of requests exceeded limit" does not reset between servers - #4 by spotco

Getting spammed with “Number of requests exceeded limit” in Robeats servers. The game uses communication with an external webserver to do all data saving/etc. This issue is stopping players in robeats from loading in-game. There were not these errors ingame last week. Was some sort of flag changing HTTPService behaviour changed?

I have temporarily lowered reserved server sizes in this game from 100 to 5 to allow players to join the game.

5 Likes

Are you sure you aren’t sending more than 500 requests/min? If you reach that limit, HttpService will basically disable itself for 30 seconds according to the docs.

1 Like

HttpService can do weird things. Let me know if the issue persists.

1 Like

@ConvexHero here’s what’s going on, reproducible with this place file:
http_demo.rbxl (22.0 KB)
To repro:

  • Download the rbxl file and publish to roblox.
  • Join the game, open developer console server log.
  • Wait until RequestCount(500) has been reached (this means that "HttpService:PostAsync has been called 500 times).
  • Quit the game.
  • Join the game again.
  • Confirm this is a SEPARATE game server with a different “—Server Started at (…)—” value in the developer console server log.
  • There will be “Number of requests exceeded limit” in the new server.

It looks like HTTPService request limits aren’t resetting between game servers.

Server 1 (First server, request attempts 1-500 work as expected).

Server 2 (Second server. Many initial HTTP requests fail because of the “Number of requests exceeded limit” error).

Please let me know if there were any recent changes to the roblox client or infrastructure that could have caused this (and if it is an easy fix on your end).

There was a flag that was reverted earlier today. Do you know if this is still affecting RoBeats?

2 Likes

I’ll take a look. Thanks for the quick response.
Update: looks like it’s working for robeats

the demo repro file still having the issues, trying it in this place, spamming “number of requests exceeded” immediately every time

https://devforum.roblox.com/uploads/short-url/tv10zPtofJ4e0Z7aDlOAU4VRmTZ.rbxl

Hey @spotco, there’s an unknown request limit of 20 req/minute when there’s a single player in the server. I found it a couple months ago as it was causing major in Royale High as well, as we depend on the request limit to be 500 as described in the documentation. It seemed to only occur when a single player is in the server, then when more players join it scales up to 500. The problem is though, if you exceed that request limit of 20, then it will stall the service and especially if you are retrying failed requests (like we were) then it won’t be able to make those successive requests.

To work around this until they fix it is I’ve queue up the requests if there is a single player to make sure that they don’t exceed 20. But this certainly needs to be documented or fixed.

I’ve made a couple posts related to this issue:

7 Likes

This issue seems that it may be related to this - and similar behavior here is occurring still: