Skip to main content

Simulation run on this device. Scenario values are not sent anywhere — the engine is fully local.

system design simulation · free

Rate Limiter Studio

Run an exact token-bucket trace to see burst admission, refill, and the first rejection.

Which requests does this token-bucket policy admit or reject?

Engine 1.0.0 · simulation
req
1200
tokens
110000
tokens/s
0.11000
ms
186400000
tokens
0.11000
Accepted
19
Rejected
1
Acceptance rate
95.0%
Final tokens
0.50

The first rejection is request 20. Refill per gap is below request cost — the bucket drains under sustained load.

#1 allow at 0 ms (9.00 tokens left)
#2 allow at 100 ms (8.50 tokens left)
#3 allow at 200 ms (8.00 tokens left)
#4 allow at 300 ms (7.50 tokens left)
#5 allow at 400 ms (7.00 tokens left)
#6 allow at 500 ms (6.50 tokens left)
#7 allow at 600 ms (6.00 tokens left)
#8 allow at 700 ms (5.50 tokens left)
#9 allow at 800 ms (5.00 tokens left)
#10 allow at 900 ms (4.50 tokens left)
#11 allow at 1000 ms (4.00 tokens left)
#12 allow at 1100 ms (3.50 tokens left)
… 8 more trace lines

Method

  • Starts with a full bucket, refills continuously by elapsed time up to capacity, and debits cost only when enough tokens are available.
  • The trace models one local bucket: no distributed clocks, no replication effects, uniform cost and spacing.