Aperture - A Non-Cooperative, Client-Side Load Balancing Algorithm
Offered By: USENIX via YouTube
Course Description
Overview
Explore a conference talk from SREcon19 Asia/Pacific that delves into Aperture, a non-cooperative, client-side load balancing algorithm developed by Twitter. Discover how Twitter's RPC framework, Finagle, employs this unique approach to load balancing and the challenges it faces as service clusters grow to thousands of instances. Learn about the evolution of Twitter's client-side load balancer, service-to-service load balancing, and the intricacies of random aperture and its limitations. Gain insights into the development of discrete coordinates, destination rings, and composite rings, as well as the implementation of continuous coordinates and multiple service rings. Understand the dynamic aperture size, resilience measures, and the migration process from random aperture to D-Aperture. Examine the reduction in request retries achieved through this algorithm and consider the limitations and future work in this area of load balancing technology.
Syllabus
Intro
TWITTERS CLIENT-SIDE LOAD BALANCER EVOLUTION
SERVICE-TO-SERVICE LOAD BALANCING
EXAMPLE SERVICE TOPOLOGY
RANDOM APERTURE: UNFAIR
RANDOM IS STATISTICAL
CONFIGURED RANDOM APERTURE
DISCRETE COORDINATES
DESTINATION RING
COMPOSITE RINGS
SESSION HISTOGRAM
CONTINUOUS COORDINATES
MULTIPLE SERVICE RINGS
CONTINUOUS COORDINATE MODEL
DYNAMIC APERTURE SIZE
RESILIENCY
MIGRATION FROM RANDOM APERTURE TO D-APERTURE
REDUCTION IN REQUEST RETRIES
LIMITATIONS
FUTURE WORK
Taught by
USENIX
Related Courses
Financial Sustainability: The Numbers side of Social Enterprise+Acumen via NovoEd Cloud Computing Concepts: Part 2
University of Illinois at Urbana-Champaign via Coursera Developing Repeatable ModelsĀ® to Scale Your Impact
+Acumen via Independent Managing Microsoft Windows Server Active Directory Domain Services
Microsoft via edX Introduction aux conteneurs
Microsoft Virtual Academy via OpenClassrooms