A collection of methods for configuring the admission control modules of Finagle clients.
A collection of methods for configuring the admission control modules of Finagle clients.
a Stack.Parameterized client to configure
A collection of methods for basic configuration of Finagle clients.
A collection of methods for basic configuration of Finagle clients.
a Stack.Parameterized client to configure
A collection of methods for configuring sessions of the Finagle clients.
A collection of methods for configuring sessions of the Finagle clients.
Session might be viewed as logical connection that wraps a physical connection (i.e., transport) and controls its lifecycle. Sessions are used in Finagle to maintain liveness, requests cancellation, draining, and much more.
a Stack.Parameterized client to configure.
SessionPoolingParams for pooling related configuration.
A collection of methods for configuring the Transport for Finagle clients.
A collection of methods for configuring the Transport for Finagle clients.
a Stack.Parameterized client to configure
A collection of methods for configuring common parameters (labels, stats receivers, etc) shared between Finagle clients and servers.
A collection of methods for configuring common parameters (labels, stats receivers, etc) shared between Finagle clients and servers.
a Stack.Parameterized server/client to configure
A collection of methods for configuring the Load Balancing (default) module of Finagle clients.
A collection of methods for configuring the Load Balancing (default) module of Finagle clients.
a Stack.Parameterized client to configure
A class eligible for configuring a com.twitter.finagle.stats.ExceptionStatsHandler throughout finagle servers and clients.
A class eligible for configuring a com.twitter.finagle.stats.ExceptionStatsHandler throughout finagle servers and clients.
NB: Since the default for failures is to be scoped under "failures", if you set the default to be in another scope, it may be difficult for engineers unfamiliar with your stats to understand your service's key metrics.
A class eligible for configuring a high resolution com.twitter.util.Timer such that tasks are run tighter to their schedule.
A class eligible for configuring a high resolution com.twitter.util.Timer such that tasks are run tighter to their schedule.
it is a requirement that it propagates Locals from scheduling time to execution time.
it is expected that the resolution should be sub-10 milliseconds.
Timer for a configuration that is appropriate for tasks that do not need fine-grained scheduling.
A class eligible for configuring a label used to identify finagle clients and servers.
A class eligible for configuring a java.util.logging.Logger used throughout finagle clients and servers.
A class eligible for configuring a com.twitter.util.Monitor throughout finagle servers and clients.
A class eligible for configuring a client library name used to identify which client library a client is using.
A class eligible for configuring a com.twitter.finagle.util.ReporterFactory throughout finagle servers and clients.
A class eligible for configuring a com.twitter.finagle.service.ResponseClassifier which is used to determine the result of a request/response.
A class eligible for configuring a com.twitter.finagle.service.ResponseClassifier which is used to determine the result of a request/response.
This allows developers to give Finagle the additional application specific knowledge necessary in order to properly classify them. Without this, Finagle can only safely make judgements about the transport level failures.
As an example take an HTTP client that receives a response with a 500 status code back from a server. To Finagle this is a successful request/response based solely on the transport level. The application developer may want to treat all 500 status codes as failures and can do so via a com.twitter.finagle.service.ResponseClassifier.
It is a PartialFunction and as such multiple classifiers can be composed together via PartialFunction.orElse.
If unspecified, the default classifier is com.twitter.finagle.service.ResponseClassifier.Default which is a total function fully covering the input domain.
com.twitter.finagle.http.service.HttpResponseClassifier
for some
HTTP classification tools.
A collection of methods for configuring the server-side admission control modules of Finagle servers.
A collection of methods for configuring the server-side admission control modules of Finagle servers.
a Stack.Parameterized server to configure
A collection of methods for configuring the Transport for Finagle servers.
A collection of methods for configuring the Transport for Finagle servers.
a Stack.Parameterized server to configure
A collection of methods for configuring sessions of Finagle clients and servers.
A collection of methods for configuring sessions of Finagle clients and servers.
Session might be viewed as logical connection that wraps a physical connection (i.e., transport) and controls its lifecycle. Sessions are used in Finagle to maintain liveness, requests cancellation, draining, and much more.
a Stack.Parameterized client to configure
A collection of methods for configuring the Pooling module of Finagle clients.
A collection of methods for configuring the Pooling module of Finagle clients.
a Stack.Parameterized client to configure
A collection of methods for configuring modules which help Finagle determine the health of a session.
A collection of methods for configuring modules which help Finagle determine the health of a session. Some of these act as circuit breakers, instructing the load balancer to choose alternate paths. Effectively these enable your client to maintain higher success rates.
a Stack.Parameterized client to configure
A class eligible for configuring a com.twitter.finagle.stats.StatsReceiver throughout finagle clients and servers.
A class eligible for configuring a com.twitter.util.Timer used throughout finagle clients and servers.
A class eligible for configuring a com.twitter.util.Timer used throughout finagle clients and servers.
it is a requirement that it propagates Locals from scheduling time to execution time.
HighResTimer for a configuration that needs a more fine-grained timer as this is typically implemented via a "hashed wheel timer" which is optimized for approximated I/O timeout scheduling.
A class eligible for configuring a com.twitter.finagle.tracing.Tracer throughout finagle servers and clients.
A collection of methods for configuring the Transport params of Finagle servers or clients.
A collection of methods for configuring the Transport params of Finagle servers or clients.
Transport is a Finagle abstraction over the network connection (i.e., a TCP connection).
a Stack.Parameterized server/client to configure
This class is abstract in a sense that it's base for both server and client transports.
ClientTransportParams for client-specific params ServerTransportParams for server-specific params
Provides the withSession
(client's session) API entry point.
Provides the withSession
(client's session) API entry point.
Provides the withTransport
(client's transport) API entry point.
Provides the withTransport
(client's transport) API entry point.
Provides the withLoadBalancer
(default balancer) API entry point.
Provides the withLoadBalancer
(default balancer) API entry point.
Provides the withAdmissionControl
API entry point.
Provides the withAdmissionControl
API entry point.
Provides the withSession
API entry point for servers.
Provides the withSession
API entry point for servers.
Provides the withTransport
(server's transport) API entry point.
Provides the withTransport
(server's transport) API entry point.
Provides the withSessionPool
(default pool) API entry point.
Provides the withSessionPool
(default pool) API entry point.
Provides the withSessionQualifier
API entry point.
Provides the withSessionQualifier
API entry point.
Defines common com.twitter.finagle.Stack.Param's shared between finagle clients and servers.