Finagle Under the Hood
Offered By: Scala Days Conferences via YouTube
Course Description
Overview
Dive deep into the internals of Finagle, an extensible RPC system for JVM written in Scala, in this 46-minute talk from Scala Days New York 2016. Explore the complex logic behind Finagle's programming model, where servers and clients are viewed as easily composable functions. Discover the inner workings of connection pooling, load balancing, and circuit breaking. Follow along as the speaker walks through each module, explaining what happens when sending a request to a Finagle client and receiving a request by a Finagle server. Learn about server concurrency limits, request timeouts, client response classification, retries, retry budgets, backoff strategies, and load balancing techniques. Gain insights into circuit breaking, failure accrual, and other advanced features that make Finagle a powerful tool for building distributed systems.
Syllabus
Intro
Finagle: Status
Finagle: @Twitter
Your Server as a Function
Configuring Servers and Clients
What does the server do?
Server: Concurrency Limit
Server and Client: Request Timeout
What does the client do?
Client: Response Classification
Client: Retries
Client: Retry Budget
Client: Retry Backoff
Client: Timeouts
EWMA (Exp Weighted Moving Avg)
Client: Load Balancing via Aperture
Client: Circuit Breaking
Client: Failure Accrual
What else?
Taught by
Scala Days Conferences
Related Courses
Paradigms of Computer Programming – FundamentalsUniversité catholique de Louvain via edX Paradigms of Computer Programming – Abstraction and Concurrency
Université catholique de Louvain via edX Computing: Art, Magic, Science - Part II
ETH Zurich via edX Concurrency
AdaCore via Independent Java Fundamentals for Android Development
Galileo University via edX