<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/to-make-a-service-more-stable-eliminate-dependencies-syibv7oj8" -->

---
title: To make a service more stable, eliminate dependencies
description: Every dependency a service relies on is another way for it to fail, so reliability engineering means questioning which dependencies are truly necessary and...
canonical: https://daily.dev/posts/to-make-a-service-more-stable-eliminate-dependencies-syibv7oj8
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: To make a service more stable, eliminate dependencies | daily.dev
og:description: Every dependency a service relies on is another way for it to fail, so reliability engineering means questioning which dependencies are truly necessary and...
og:url: https://daily.dev/posts/to-make-a-service-more-stable-eliminate-dependencies-syibv7oj8
og:image: https://api.daily.dev/og/posts/SYIbv7OJ8.png
og:image:alt: To make a service more stable, eliminate dependencies
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# To make a service more stable, eliminate dependencies

**[ITNEXT](https://daily.dev/sources/itnext)** · 3 min read · 0 upvotes · 0 comments

## Summary

Every dependency a service relies on is another way for it to fail, so reliability engineering means questioning which dependencies are truly necessary and designing graceful degradation for the rest. Edge systems like load balancers and API gateways tend to be dependency-light because they carry outsized responsibility for platform availability. Envoy Proxy is offered as an example: it fetches xDS configuration periodically and caches it in memory, so request processing continues even if the xDS service goes down. Observability (logging, tracing) should be treated as best-effort rather than a hard dependency, using async logging and buffering so customer traffic isn't blocked by observability outages.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://itnext.io/to-make-a-service-more-stable-eliminate-dependencies-d60d1c1a65bc>

## Questions this post answers

### How does Envoy Proxy keep routing traffic if its xDS configuration service goes down?

Envoy fetches configuration from the xDS service periodically and stores it in memory, using that cached copy during request processing instead of calling xDS on every request. If the xDS service becomes unavailable, Envoy keeps routing traffic using its last known configuration, so request processing no longer depends on xDS being reachable at that moment.

_daily.dev surfaces reliability patterns like this for engineers designing services that must survive dependency outages._

### Should logging or tracing failures be allowed to stop customer traffic?

No, observability should be treated as best effort rather than a hard dependency. If a logging or tracing backend becomes unavailable, customer traffic should keep flowing; this is achieved through asynchronous logging, buffering, and truncation policies so operational visibility gaps don't block request processing. Customer availability is prioritized over complete observability data.

_Engineers weighing observability tradeoffs against uptime can find this kind of reliability guidance on daily.dev._

## Similar posts on daily.dev

- [The closer to the edge, the more stable a platform must be](https://daily.dev/posts/the-closer-to-the-edge-the-more-stable-a-platform-must-be-1rptuv5sk) · ITNEXT · 1 upvotes · 0 comments
- [Reliability is a Product Decision](https://daily.dev/posts/reliability-is-a-product-decision-wpmua7ypy) · Erlang Solutions · 1 upvotes · 0 comments
- [5. High Reliability: How Great Software Recovers Gracefully \(Part 2\)](https://daily.dev/posts/5-high-reliability-how-great-software-recovers-gracefully-part-2--cris8hzxn) · Medium · 0 upvotes · 0 comments
- [Designing Reliable Data Pipelines in Cloud-Native Environments](https://daily.dev/posts/designing-reliable-data-pipelines-in-cloud-native-environments-zzkrsbepr) · Container Journal · 0 upvotes · 0 comments

---

Tags: [#career](https://daily.dev/tags/career), [#observability](https://daily.dev/tags/observability), [#distributed-systems](https://daily.dev/tags/distributed-systems), [#envoy](https://daily.dev/tags/envoy)

[View this post on daily.dev](https://daily.dev/posts/to-make-a-service-more-stable-eliminate-dependencies-syibv7oj8)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"To make a service more stable, eliminate dependencies","url":"https://daily.dev/posts/to-make-a-service-more-stable-eliminate-dependencies-syibv7oj8","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/to-make-a-service-more-stable-eliminate-dependencies-syibv7oj8"},"datePublished":"2026-08-15T22:35:21.190Z","dateModified":"2026-09-13T18:44:12.702Z","description":"Every dependency a service relies on is another way for it to fail, so reliability engineering means questioning which dependencies are truly necessary and...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/cf696b950a0bc77c7352e87d7d7d37a7?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/cf696b950a0bc77c7352e87d7d7d37a7?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"ITNEXT","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"ITNEXT","logo":"https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/itnext2","url":"https://daily.dev/sources/itnext"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/to-make-a-service-more-stable-eliminate-dependencies-syibv7oj8","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"career,observability,distributed-systems,envoy","timeRequired":"PT3M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"ITNEXT","item":"https://daily.dev/sources/itnext"},{"@type":"ListItem","position":3,"name":"To make a service more stable, eliminate dependencies"}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/to-make-a-service-more-stable-eliminate-dependencies-syibv7oj8#faq","mainEntity":[{"@type":"Question","name":"How does Envoy Proxy keep routing traffic if its xDS configuration service goes down?","acceptedAnswer":{"@type":"Answer","text":"Envoy fetches configuration from the xDS service periodically and stores it in memory, using that cached copy during request processing instead of calling xDS on every request. If the xDS service becomes unavailable, Envoy keeps routing traffic using its last known configuration, so request processing no longer depends on xDS being reachable at that moment. daily.dev surfaces reliability patterns like this for engineers designing services that must survive dependency outages."}},{"@type":"Question","name":"Should logging or tracing failures be allowed to stop customer traffic?","acceptedAnswer":{"@type":"Answer","text":"No, observability should be treated as best effort rather than a hard dependency. If a logging or tracing backend becomes unavailable, customer traffic should keep flowing; this is achieved through asynchronous logging, buffering, and truncation policies so operational visibility gaps don't block request processing. Customer availability is prioritized over complete observability data. Engineers weighing observability tradeoffs against uptime can find this kind of reliability guidance on daily.dev."}}]}
```

