public final class ThrottlingState extends Object
| Constructor and Description |
|---|
ThrottlingState(org.isomorphism.util.TokenBucket timeBucket,
org.isomorphism.util.TokenBucket errorsBucket)
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
void |
consumeError()
Consumes errors from the error bucket.
|
void |
consumeTime(Duration elapsed)
Consumes request time from the time bucket.
|
Duration |
getBackoffDelay()
How long should a client wait before sending the next request.
|
boolean |
isThrottled()
Should this client be throttled.
|
public ThrottlingState(org.isomorphism.util.TokenBucket timeBucket,
org.isomorphism.util.TokenBucket errorsBucket)
timeBucket - bucket to track requests timeerrorsBucket - bucket to track errorspublic boolean isThrottled()
public Duration getBackoffDelay()
public void consumeTime(Duration elapsed)
min(elapsed.toMillis(), timeBucket.getNumTokens()).elapsed - time elapsed during the requestpublic void consumeError()
Copyright © 2017. All rights reserved.