Types of components

The easiest way to get started with setting SLIs is to abstract your system into a few common types of components. You can then use our list of suggested SLIs for each component to choose the ones most relevant to your service:

Request-driven

• The user creates some type of event and expects a response. For example, this could be an HTTP service where the user interacts with a browser or an API for a mobile application.

Pipeline

• A system that takes records as input, mutates them, and places the output somewhere else. This might be a simple process that runs on a single instance in real time, or a multistage batch process that takes many hours. Examples include:

• A system that periodically reads data from a relational database and writes it into a distributed hash table for optimized serving • A video processing service that converts video from one format to another • A system that reads in log files from many sources to generate reports • A monitoring system that pulls metrics from remote servers and generates time series and alerts

Storage

• A system that accepts data (e.g., bytes, records, files, videos) and makes it available to be retrieved at a later date.


Keyboard Shortcuts

Key Action
o Source
e Edit
i Insight
r Random
s or / Search
www.joshbeckman.org/notes/489435121