Search code examples
iosmdm

Using a rate limit with Apple MDM


In our Apple MDM solution I would like to implement a rate limit, setting a limit on how many devices can interact with the server at any time.
Just like an iOS device responds with a NotNow when it is not able to service a request, I was thinking about responding with a 429 (Too Many Requests).
How would a device act upon receiving this? Would it try again a little later or would it just give up and wait for a new request?


Solution

  • a) You can try and see what will happen

    b) Generally speaking, device behavior is unreliable (documentation doesn't specify how a device will behave in this case, so it can change from version to version)

    c) Why do you have this problem at all? A device only attempts to receive a command when you send a push notification. So, instead of limiting who can get a command, just limit push notifications which you are sending.