Enum FlowController.LimitExceededBehavior (2.21.0)

public enum FlowController.LimitExceededBehavior extends Enum<FlowController.LimitExceededBehavior>

Enumeration of behaviors that FlowController can use in case the flow control limits are exceeded.

Static Fields

NameDescription
Block

Waits until the request can be made without exceeding the limit.

This might be appropriate in batch-processing, where latencies of individual requests are not important.

Ignore

Disables flow-control.

This is provided mainly for debugging and not recommended for production use. Having too many requests in-flight might cause RPCs to fail due to congested network or the computer to run out of memory due to excessive buffering, etc.

ThrowException

Throws MaxOutstandingElementCountReachedException or MaxOutstandingRequestBytesReachedException.

This might be appropriate in interactive scenarios. For example, a web server might catch these exceptions and report to the user that the system is overloaded and that the user could try again later. It could also be useful in applications that implement custom rate-limiting logic.

Static Methods

NameDescription
valueOf(String name)
values()