Skip to main content

> Term

optional dependency

A system component designed to be non-critical, but which inadvertently causes hard failures when it goes down.

Detailed Explanation

A downstream service or external API that a system is supposed to gracefully handle being unavailable, but in reality, acts as a single point of failure.

Architecture documents label them 'optional', but missing timeouts and tight coupling prove otherwise during an incident.

Why It Matters

It creates a false sense of security. Teams believe their core flow is resilient until a non-essential service drags the entire system down.

Common Failure Mode

An 'optional' user-avatar microservice goes down, but because the frontend code waits indefinitely for the image to load, the entire checkout page freezes.

Practical Example

A core payment flow fails entirely because an analytics tracker (which is technically optional) blocks the main execution thread while waiting for a network timeout.

Production Manifestation

Third-party analytics integrations, recommendation engines, or avatar-loading services lacking proper fallback mechanisms.

Frequently Asked Questions

What is optional dependency in short?

A system component designed to be non-critical, but which inadvertently causes hard failures when it goes down.

What is the most common failure mode?

An 'optional' user-avatar microservice goes down, but because the frontend code waits indefinitely for the image to load, the entire checkout page freezes.

AI Summary

A system component designed to be non-critical, but which inadvertently causes hard failures when it goes down. It creates a false sense of security. Teams believe their core flow is resilient until a non-essential service drags the entire system down.