~/talk

The Danger of Implicit Blocking in Finagle

Talkat Scale By The Bay 2018 · 2018-11-15..11-17· [java]
links:none on file
slides:none on file

Finagle services block when long computations or explicit waits run on Netty event-loop threads, causing worker threads (default 2× logical CPUs) to exhaust and latency to jump from ~200 ms to ~2 s (up to 10×) under load. Hidden symptoms include nonzero blocking_ms and rising handle_time_microseconds. Fixes: remove Await.result/Await.ready, move CPU work onto a separate FuturePool sized for the machine, beware Twitter vs Scala future semantics, and avoid unbounded thread pools that can OOM.

AI-written summary · about

  1. 0:00Introduction and speaker
  2. 1:01Implicit blocking explained
  3. 2:49Production latency spike
  4. 3:32Explicit blocking demo
  5. 4:16Implicit blocking demo
  6. 5:43Finagle thread model
  7. 8:07Worker thread exhaustion
  8. 9:12Key metrics to monitor
  9. 10:16Solving the problem
  10. 12:36Conclusion and takeaways
  11. 13:29Q&A session
~/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.