Skip to main content
Uber logo

Schedule rides in advance

Reserve a rideReserve a ride

Schedule rides in advance

Reserve a rideReserve a ride
Engineering

Denial By DNS: Uber’s Open Source Tool for Preventing Resource Exhaustion by DNS Outages

December 5, 2017 / Global
Featured image for Denial By DNS: Uber’s Open Source Tool for Preventing Resource Exhaustion by DNS Outages
Image
Figure 1: In the CGI model, requests are spawned by a common gateway.
Image
Figure 2: Three separate requests are handled from start to finish via the thread pool model.
Figure 3: With the M:N model, requests from three separate users are handled in a single thread.
Figure 4: The M:N model can handle three requests and getaddrinfo() invocations.
Figure 5: The architecture of Uber’s login service includes a sign-in service, password service, and third-party provider that enables third-party login methods.
NameCommentSafe
erlang-httpcErlang 20 with inets httpcunsafe
golang-httpGolang 1.9 with ‘net/http’ from stdlibsafe
nodejs-httpNode 8.5 with ‘http’ from stdlibunsafe
python3-tornadoPython 3.5.3 with Tornado 4.4.3unsafe
Motiejus Jakštys

Motiejus Jakštys

Motiejus Jakštys is a Staff Engineer at Uber based in Vilnius. His professional interests are systems programming and cartography. Motiejus is passionate about writing software that consumes as little resources as necessary.

Posted by Motiejus Jakštys

Category: