cs1675 hw2

HW2

Read the following paper excerpts, and answer the questions below.

Reading

Questions

The total length of your response should not exceed ~500 words. Submit responses via gradescope.

Summarization

Why have microservice architectures become a popular way to deploy applications?

Comprehension

What is the alternative to a microservice architecture? What are the benefits and drawbacks of that alternative and a microservice architecture? Discuss the techniques (e.g., “hedged requests”) described in the “Tail at Scale” paper that fit the following four categories. Give at least one example per category, or argue that no technique fits that category.

  1. techniques that work (or work better) with microservice-structured applications, but not in your alternative
  2. techniques that work (or work better) with your alternative, but not in a microservice architecture
  3. techniques that work with both
  4. techniques that work with neither

Synthesis

“The Tail at Scale” reminds us that as an application grows in its number of components, its tail latency will tend to grow as well. How could we use distributed tracing, as described in the Dapper paper, to identify sources of tail latency?

Specifically:

  1. What sampling rate would a distributed tracing approach need to identify the source of a latency problem (say, the BigTable benchmark the “Tail at Scale” paper describes) occurring in the 99.9%ile?
  2. What determines how much data your sampling strategy would generate and, as a result, how much write bandwidth it would need? Give a concrete example.

If a number you need for this calculation isn’t given in the reading or this question, make a back-of-the-envelope assumption in your calculations.

Optional extra: Brown alumnus Jonathan Mace has been researching this problem (including during his PhD at Brown). One of his recent papers in the area is “Hindsight tracing”.