~/talk

Finagle Under the Hood

Talkat Scala Days Berlin 2016 · 2016-06-15..06-17· [microservices, kubernetes]
slides:none on file

Finagle is an extensible JVM RPC library used in production since 2010 with ~4.5k GitHub stars and 15+ protocols including Max multiplexing; it maps servers to functions and composes middleware stacks that end in a Netty pipeline. Clients implement retries with a retry budget and jittered backoffs, connection pooling (disabled for Max), circuit breakers (failure accrual and success‑rate policies), and advanced load balancing like P2C and EWMA load metric; an experimental aperture window reduces connections for very large replica sets. Servers remain minimal, providing tracing, metrics, timeouts and concurrency limits.

AI-written summary · about

  1. 0:00Intro
  2. 2:36Finagle: Status
  3. 4:37Finagle: @Twitter
  4. 6:22Your Server as a Function
  5. 9:58Configuring Servers and Clients
  6. 11:38What does the server do?
  7. 12:08Server: Concurrency Limit
  8. 15:12Server and Client: Request Timeout
  9. 15:58What does the client do?
  10. 22:15Client: Response Classification
  11. 23:05Client: Retries
  12. 24:55Client: Retry Budget
  13. 25:42Client: Retry Backoff
  14. 27:26Client: Timeouts
  15. 31:43EWMA (Exp Weighted Moving Avg)
  16. 36:26Client: Load Balancing via Aperture
  17. 37:48Client: Circuit Breaking
  18. 39:39Client: Failure Accrual
  19. 40:59What else?
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.