Engineering Reliable Mobile Applications
by Kristine Chen, Venkat Patnala, Devin Carraway, Pranjal Deo
Overview
Imagine a situation where your service reports as healthy and serving but you receive multiple user reports of poor availability. How are these users accessing your service? Most likely, they’re using a client application, such as a mobile phone. Traditionally, SRE has only supported systems and services running in data centers rather than code running on the client, which has impeded issue detection.
This report examines the challenges of client-side reliability and provides a useful set of SRE concepts and tools you can apply to your own apps. Four site reliability engineers from Google share their experiences developing and supporting first-party native mobile applications. You’ll learn core concepts critical to engineering reliable client apps as well as phenomena unique to mobile applications and key takeaways from issues caused by or related to them, including:
- Designing mobile apps that are resilient to unexpected inputs
- Rolling out changes in a controlled, metric-driven way
- Monitoring apps in production by measuring critical user interactions
- Releasing changes using feature flags so they can be evaluated and rolled back independently
- Understanding and preparing for your app’s impact on servers
- Using practices that avoid feedback patterns between your apps and services
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access