Finagle 6.28.0
kevinoliver
released this
08 Mar 04:16
·
4224 commits
to develop
since this release
Runtime Behavior Changes
- finagle-core: Weights are no longer supported by the load balancers. They are moved
one level above and interpreted by a new module, theTrafficDistributor
. This
frees the balancers to have non-linear load metrics. It also changes the semantics
of weights. They are now normalized by size of endpoints that share the same weight
and interpreted proportional to offered load (however, they can still be though of,
roughly, as multipliers for traffic).RB_ID=677416
- finagle-core: The RequestSemaphoreFilter now sheds load by dropping the tail of the queue
and failing it with aFailure.Restartable
. Previously, the filter had an unbounded
queue but now the default size is 0 (i.e. no queueing). The dropped requests are in
turn requeued by Finagle clients with protocol support (e.g. Http, ThriftMux).
RB_ID=696934
- finagle-core:
ServerBuilder.ServerConfig.BindTo
,ServerBuilder.ServerConfig.MonitorFactory
,
andServerBuilder.ServerConfig.Daemonize
, are now private tocom.twitter.finagle.builder
.RB_ID=730865
- finagle-memcachedx: Renamed to finagle-memcached.
- finagle-stats: Standard deviation ("$statName.stddev") is no longer exported.
RB_ID=726309
(follow up toRB_ID=717647
) - finagle-serversets:
namer/bind_latency_us
stat now counts only
time in name resolution, not service acquisition.
namer/{dtabcache,namecache,nametreecache}/misstime_ms
stats are
no longer exported.RB_ID=730309
Breaking API Changes
- finagle-core:
c.t.f.jsr166y
has been replaced with Java 7 API. finagle: Replace JSR166y
with Java 7 API.RB_ID=720903
- finagle-core:
LoadBalancerFactory
no longer takes endpoints with weights as
per the decoupling mentioned in runtime changes.RB_ID=677416
- finagle-core:
RequestSemaphoreFilter.Param
now accepts acom.twitter.concurrent.AsyncSemaphore
instead of an integer representing the max concurrency.RB_ID=696934
- finagle-core: removed
c.t.f.asyncDns
flag andc.t.f.SyncInetResolver
; DNS resolution is
now always asynchronous.RB_ID=734427
- finagle-core:
ClientBuilder.ClientConfig.DefaultParams
,ClientBuilder.ClientConfig.DestName
,
ClientBuilder.ClientConfig.GlobalTimeout
,ClientBuilder.ClientConfig.Daemonize
, and
ClientBuilder.ClientConfig.MonitorFactory
are now private tocom.twitter.finagle.builder
.
ClientBuilder.ClientConfig.Retries
is now private tocom.twitter
.RB_ID=727245
- finagle-httpx:
Method
no longer has an extractor. To access the name of
custom methods, usetoString
.RB_ID=722913
- finagle-mux:
c.t.f.mux.exp.FailureDetector
andc.t.f.mux.exp.sessionFailureDetector
are
moved out of exp package into mux package.RB_ID=725350