Dependencies
Declarations
-
com
-
netflix
-
concurrency
-
limits
- Limit
- Limiter
- LimiterRegistry
- MetricIds
-
MetricRegistry
- SampleListener
- Counter
- registerDistribution(String, String[]): SampleListener
- distribution(String, String[]): SampleListener
- registerGauge(String, Supplier<Number>, String[]): void
- gauge(String, Supplier<Number>, String[]): void
- counter(String, String[]): Counter
- registerGuage(String, Supplier<Number>, String[]): void
- executors
- internal
-
limit
- AIMDLimit
- AbstractLimit
- FixedLimit
-
Gradient2Limit
- LOG: Logger
-
Builder
- initialLimit: int
- minLimit: int
- maxConcurrency: int
- smoothing: double
- queueSize: Function<Integer, Integer>
- registry: MetricRegistry
- longWindow: int
- rttTolerance: double
- initialLimit(int): Builder
- minLimit(int): Builder
- maxConcurrency(int): Builder
- queueSize(int): Builder
- queueSize(Function<Integer, Integer>): Builder
- rttTolerance(double): Builder
- driftMultiplier(int): Builder
- smoothing(double): Builder
- metricRegistry(MetricRegistry): Builder
- shortWindow(int): Builder
- longWindow(int): Builder
- build(): Gradient2Limit
- newBuilder(): Builder
- newDefault(): Gradient2Limit
- estimatedLimit: double
- lastRtt: long
- longRtt: Measurement
- maxLimit: int
- minLimit: int
- queueSize: Function<Integer, Integer>
- smoothing: double
- longRttSampleListener: SampleListener
- shortRttSampleListener: SampleListener
- queueSizeSampleListener: SampleListener
- tolerance: double
- Gradient2Limit(Builder): void
- _update(long, long, int, boolean): int
- getLastRtt(TimeUnit): long
- getRttNoLoad(TimeUnit): long
- toString(): String
-
GradientLimit
- DISABLED: int
- LOG: Logger
-
Builder
- initialLimit: int
- minLimit: int
- maxConcurrency: int
- smoothing: double
- queueSize: Function<Integer, Integer>
- registry: MetricRegistry
- rttTolerance: double
- probeInterval: int
- minRttThreshold(long, TimeUnit): Builder
- initialLimit(int): Builder
- minLimit(int): Builder
- rttTolerance(double): Builder
- maxConcurrency(int): Builder
- queueSize(int): Builder
- queueSize(Function<Integer, Integer>): Builder
- smoothing(double): Builder
- metricRegistry(MetricRegistry): Builder
- probeMultiplier(int): Builder
- probeInterval(int): Builder
- build(): GradientLimit
- newBuilder(): Builder
- newDefault(): GradientLimit
- estimatedLimit: double
- lastRtt: long
- rttNoLoadMeasurement: Measurement
- maxLimit: int
- minLimit: int
- queueSize: Function<Integer, Integer>
- smoothing: double
- rttTolerance: double
- minRttSampleListener: SampleListener
- minWindowRttSampleListener: SampleListener
- queueSizeSampleListener: SampleListener
- probeInterval: int
- resetRttCounter: int
- GradientLimit(Builder): void
- nextProbeCountdown(): int
- _update(long, long, int, boolean): int
- getLastRtt(TimeUnit): long
- getRttNoLoad(TimeUnit): long
- toString(): String
- SettableLimit
- TracingLimitDecorator
-
VegasLimit
- LOG: Logger
- LOG10: Function<Integer, Integer>
-
Builder
- initialLimit: int
- maxConcurrency: int
- registry: MetricRegistry
- smoothing: double
- alphaFunc: Function<Integer, Integer>
- betaFunc: Function<Integer, Integer>
- thresholdFunc: Function<Integer, Integer>
- increaseFunc: Function<Double, Double>
- decreaseFunc: Function<Double, Double>
- probeMultiplier: int
- Builder(): void
- probeMultiplier(int): Builder
- alpha(int): Builder
- threshold(Function<Integer, Integer>): Builder
- alpha(Function<Integer, Integer>): Builder
- beta(int): Builder
- beta(Function<Integer, Integer>): Builder
- increase(Function<Double, Double>): Builder
- decrease(Function<Double, Double>): Builder
- smoothing(double): Builder
- initialLimit(int): Builder
- tolerance(double): Builder
- maxConcurrency(int): Builder
- backoffRatio(double): Builder
- metricRegistry(MetricRegistry): Builder
- build(): VegasLimit
- newBuilder(): Builder
- newDefault(): VegasLimit
- estimatedLimit: double
- rtt_noload: long
- maxLimit: int
- smoothing: double
- alphaFunc: Function<Integer, Integer>
- betaFunc: Function<Integer, Integer>
- thresholdFunc: Function<Integer, Integer>
- increaseFunc: Function<Double, Double>
- decreaseFunc: Function<Double, Double>
- rttSampleListener: SampleListener
- probeMultiplier: int
- probeCount: int
- probeJitter: double
- VegasLimit(Builder): void
- resetProbeJitter(): void
- shouldProbe(): boolean
- _update(long, long, int, boolean): int
- updateEstimatedLimit(long, int, boolean): int
- toString(): String
-
WindowedLimit
- DEFAULT_MIN_WINDOW_TIME: long
- DEFAULT_MAX_WINDOW_TIME: long
- DEFAULT_MIN_RTT_THRESHOLD: long
- DEFAULT_WINDOW_SIZE: int
- newBuilder(): Builder
-
Builder
- maxWindowTime: long
- minWindowTime: long
- windowSize: int
- minRttThreshold: long
- sampleWindowFactory: SampleWindowFactory
- minWindowTime(long, TimeUnit): Builder
- maxWindowTime(long, TimeUnit): Builder
- windowSize(int): Builder
- minRttThreshold(long, TimeUnit): Builder
- sampleWindowFactory(SampleWindowFactory): Builder
- build(Limit): WindowedLimit
- delegate: Limit
- nextUpdateTime: long
- minWindowTime: long
- maxWindowTime: long
- windowSize: int
- minRttThreshold: long
- lock: Object
- sampleWindowFactory: SampleWindowFactory
- sample: AtomicReference<SampleWindow>
- WindowedLimit(Builder, Limit): void
- notifyOnChange(Consumer<Integer>): void
- onSample(long, long, int, boolean): void
- isWindowReady(SampleWindow): boolean
- getLimit(): int
- functions
- measurement
-
window
- AverageSampleWindowFactory
-
ImmutableAverageSampleWindow
- minRtt: long
- sum: long
- maxInFlight: int
- sampleCount: int
- didDrop: boolean
- ImmutableAverageSampleWindow(): void
- ImmutableAverageSampleWindow(long, long, int, int, boolean): void
- addSample(long, int, boolean): ImmutableAverageSampleWindow
- getCandidateRttNanos(): long
- getTrackedRttNanos(): long
- getMaxInFlight(): int
- getSampleCount(): int
- didDrop(): boolean
- toString(): String
-
ImmutablePercentileSampleWindow
- minRtt: long
- maxInFlight: int
- didDrop: boolean
- observedRtts: AtomicLongArray
- sampleCount: int
- percentile: double
- ImmutablePercentileSampleWindow(double, int): void
- ImmutablePercentileSampleWindow(long, int, boolean, AtomicLongArray, int, double): void
- addSample(long, int, boolean): ImmutablePercentileSampleWindow
- getCandidateRttNanos(): long
- getTrackedRttNanos(): long
- getMaxInFlight(): int
- getSampleCount(): int
- didDrop(): boolean
- toString(): String
- PercentileSampleWindowFactory
- SampleWindow
- SampleWindowFactory
-
limiter
-
AbstractLimiter
- ID_TAG: String
- STATUS_TAG: String
- Builder
- inFlight: AtomicInteger
- clock: Supplier<Long>
- limitAlgorithm: Limit
- successCounter: Counter
- droppedCounter: Counter
- ignoredCounter: Counter
- rejectedCounter: Counter
- limit: int
- AbstractLimiter(Builder<Builder>): void
- createRejectedListener(): Optional<Listener>
- createListener(): Listener
- getLimit(): int
- getInflight(): int
- onNewLimit(int): void
-
AbstractPartitionedLimiter
- LOG: Logger
- PARTITION_TAG_NAME: String
-
Builder
- partitionResolvers: List<Function<Object, String>>
- partitions: Map<String, Partition>
- maxDelayedThreads: int
- partitionResolver(Function<Object, String>): Builder
- partition(String, double): Builder
- partitionRejectDelay(String, long, TimeUnit): Builder
- maxDelayedThreads(int): Builder
- hasPartitions(): boolean
- build(): Limiter<Object>
-
Partition
- name: String
- percent: double
- limit: int
- busy: int
- backoffMillis: long
- inflightDistribution: SampleListener
- Partition(String): void
- setPercent(double): Partition
- setBackoffMillis(long): Partition
- updateLimit(int): void
- isLimitExceeded(): boolean
- acquire(): void
- release(): void
- getLimit(): int
- getInflight(): int
- getPercent(): double
- createMetrics(MetricRegistry): void
- toString(): String
- partitions: Map<String, Partition>
- unknownPartition: Partition
- partitionResolvers: List<Function<Object, String>>
- lock: ReentrantLock
- delayedThreads: AtomicInteger
- maxDelayedThreads: int
- AbstractPartitionedLimiter(Builder<Builder, Object>): void
- resolvePartition(Object): Partition
- acquire(Object): Optional<Listener>
- releasePartition(Partition): void
- onNewLimit(int): void
- getPartition(String): Partition
-
BlockingLimiter
- MAX_TIMEOUT: Duration
- wrap(Limiter<Object>): BlockingLimiter<Object>
- wrap(Limiter<Object>, Duration): BlockingLimiter<Object>
- delegate: Limiter<Object>
- timeout: Duration
- lock: Object
- BlockingLimiter(Limiter<Object>, Duration): void
- tryAcquire(Object): Optional<Listener>
- unblock(): void
- acquire(Object): Optional<Listener>
- toString(): String
-
LifoBlockingLimiter
-
Builder
- delegate: Limiter<Object>
- maxBacklogSize: int
- maxBacklogTimeoutMillis: Function<Object, Long>
- Builder(Limiter<Object>): void
- maxBacklogSize(int): Builder<Object>
- backlogTimeout(long, TimeUnit): Builder<Object>
- backlogTimeoutMillis(long): Builder<Object>
- backlogTimeout(Function<Object, Long>, TimeUnit): Builder<Object>
- build(): LifoBlockingLimiter<Object>
- newBuilder(Limiter<Object>): Builder<Object>
- delegate: Limiter<Object>
- ListenerHolder
- backlog: Deque<ListenerHolder<Object>>
- backlogCounter: AtomicInteger
- backlogSize: int
- backlogTimeoutMillis: Function<Object, Long>
- lock: Object
- LifoBlockingLimiter(Builder<Object>): void
- tryAcquire(Object): Optional<Listener>
- unblock(): void
- acquire(Object): Optional<Listener>
- toString(): String
-
Builder
- SimpleLimiter
-
AbstractLimiter
-
limits
-
concurrency
-
netflix