Wednesday, February 9, 2022
While modern architectural patterns encourage us to declare services in a scale-agnostic way, the fact remains that our software will always have limits. If we choose to define, document, and enforce reasonable limits based on the problem domain, then our users will benefit in diverse ways. Developers deliver services that are more stable, predictable, and easy to use. The developers will benefit directly as well, because the process of imposing constraints, such as resource quotas or rate limits, gives natural scaffolding for observability.
This talk draws from lessons learned over seven years running petabyte-scale data pipelines and their associated microservices at Foursquare.