finagle-21.3.0
版本发布时间: 2021-03-31 01:23:58
twitter/finagle最新发布版本:finagle-24.5.0(2024-05-08 03:46:22)
New Features
- finagle-core: Added value ForceWithDtab to flag -com.twitter.finagle.loadbalancer.exp.apertureEagerConnections that forces the aperture load balancer to eagerly connect, even in staging environments where Dtab locals are set. 9dab522d
- finagle-core: Introduce a new Backoff to create backoffs based on varies strategies, where backoffs are calculated on the fly, instead of being created once and memoized in a Stream. Also introduced Backoff.fromStream(Stream) and Backoff.toStream to help with migration to the new API. 91d24c33
- finagle-netty4: Upgrade to Netty 4.1.59.Final and TcNative 2.0.35.Final. ee6ced91
- finagle-http: Integrate Kerberos authentication filter to finagle http client and server. e3bfa0c3 eefc21c8
- finagle-core: Provided c.t.f.ssl.TrustCredentials.X509Certificates to enable directly passing X509Certificate instead of passing a File. 61c2a596
Breaking API Changes
- finagle: Builds are now only supported for Scala 2.12+ 8a48eab7
- finagle-core: Changed flag -com.twitter.finagle.loadbalancer.exp.apertureEagerConnections" from having Boolean values true or false to EagerConnectionsType` values Enable, Disable, and ForceWithDtab. 9dab522d
- finagle-mysql: The constructor of c.t.f.mysql.transport.MysqlBufReader now takes an underlying c.t.io.ByteReader. Prior uses of the constructor, which took a c.t.io.Buf, should migrate to using c.t.f.mysql.transport.MysqlBufReader.apply instead. ad73f92d
- finagle-base-http: Kerberos jaas config KerberosConfiguration is replaced with ServerKerberosConfiguration and ClientKerberosConfiguration concrete classes.
Runtime Behavior Changes
- finagle: Revert to scala version 2.12.12 due to https://github.com/scoverage/sbt-scoverage/issues/319 c2db97c2
- finagle: Bump scala version to 2.12.13 b8e4e0ac
- finagle-core: Move helper tracing methods like traceLocal in Trace into the Tracing class. This allows cheaper use of these APIs by first capturing a Trace via Trace#apply, avoiding the extra lookups that will add overhead on the request path. ec0097cd.
- finagle-core: c.t.finagle.InetResolver, c.t.finagle.builder.ClientBuilder, c.t.finagle.liveness.FailureAccrualFactory, c.t.finagle.liveness.FailureAccrualPolicy, c.t.finagle.param.ClientParams, c.t.finagle.param.SessionQualificationParams, c.t.finagle.service.FailFastFactory, c.t.finagle.service.RequeueFilter, c.t.finagle.service.Retries, c.t.finagle.service.RetryFilter, and c.t.finagle.service.RetryPolicy will accept the new c.t.finagle.service.Backoff to create backoffs. Services can convert a Stream to/from a Backoff with Backoff.fromStream(Stream) and Backoff.toStream. 91d24c33
- finagle-core: remove the com.twitter.finagle.loadbalancer.apertureEagerConnections Toggle and change the default behavior to enable eager connections for c.t.f.loadbalancer.ApertureLeastLoaded and c.t.f.loadbalancer.AperturePeakEwma load balancers. The state of the com.twitter.finagle.loadbalancer.apertureEagerConnections GlobalFlag now also defaults to enable this feature (Enable. You can disable this feature for all clients via setting the com.twitter.finagle.loadbalancer.apertureEagerConnections GlobalFlag to Disable for your process. (i.e. -com.twitter.finagle.loadbalancer.apertureEagerConnections=Disable). ef8d536e
Deprecations
- finagle-core: Backoff.fromJava is marked as deprecated, since the new Backoff is java-friendly. For services using Stream.iterator on the old Backoff, please use the new API Backoff.toJavaIterator to acquire a java-friendly iterator. 91d24c33