.NET Architecture & System Design Interview

Resilience, Rate Limiting, Health Checks & Observability

Questions 126-150: Resilience, Rate Limiting, Health Checks & Observability.

25 Questions Filter by level

Interview questions

Open a question for the full answer, code and interview guidance.

25 Results
126
SeniorAdvanced

What is the Retry pattern?

The Retry pattern repeats an operation after a transient failure when there is a reasonable chance that a later attempt will succeed. Examples include temporary network errors, throttling, or a briefly unavailable dependency.

127
SeniorAdvanced

What is exponential backoff?

Exponential backoff increases the delay between retry attempts, reducing pressure on an unhealthy dependency. A simple sequence might wait 1 second, then 2, then 4, subject to a maximum.

128
SeniorAdvanced

What is jitter in a retry policy?

Jitter adds randomness to retry delays so large numbers of clients do not retry simultaneously after a shared failure.

129
SeniorAdvanced

What is the Circuit Breaker pattern?

The Circuit Breaker pattern temporarily stops calls to a dependency after failures exceed a configured threshold. Instead of repeatedly waiting for a known-unhealthy service, calls fail quickly or use an appropriate fallback.

130
SeniorAdvanced

What is the Timeout pattern?

The Timeout pattern limits how long an operation is allowed to wait. Distributed calls should not wait indefinitely because a slow dependency can consume threads, connections, memory, and the caller's latency budget.

131
SeniorAdvanced

What is the Bulkhead pattern?

The Bulkhead pattern isolates resources so failure or overload in one workload does not consume all capacity needed by others. The name comes from compartments in a ship that limit the spread of flooding.

132
SeniorAdvanced

What is the Fallback pattern?

Fallback provides an alternative response or behavior when the preferred dependency or operation is unavailable. Examples include cached data, a reduced feature set, or a safe default.

133
SeniorAdvanced

How should Retry and Circuit Breaker be combined?

Retry handles short transient failures by making a small number of additional attempts. Circuit Breaker handles sustained failures by stopping calls for a period.

134
SeniorAdvanced

What is a resilience pipeline in modern .NET?

A resilience pipeline composes policies such as timeout, retry, circuit breaker, rate limiting, and fallback around outbound or internal operations.

135
SeniorAdvanced

Why can retries make an outage worse?

Retries multiply traffic. If a dependency is already overloaded, immediate or excessive retries add more requests precisely when it has the least spare capacity.

136
SeniorAdvanced

What is rate limiting?

Rate limiting controls how many requests or operations are accepted during a period or under a concurrency limit. It protects services from overload, abusive clients, accidental loops, and expensive traffic spikes.

137
SeniorAdvanced

What is the Token Bucket rate-limiting algorithm?

Token Bucket maintains a bucket containing tokens that are replenished at a configured rate. Each accepted request consumes a token.

138
SeniorAdvanced

What is the Fixed Window rate-limiting algorithm?

Fixed Window divides time into intervals and allows a configured number of requests in each interval. It is simple to understand and implement.

139
SeniorAdvanced

What is the Sliding Window rate-limiting algorithm?

Sliding Window approximates or tracks request usage over a moving time range rather than resetting all capacity at a fixed boundary.

140
SeniorAdvanced

What is concurrency limiting?

Concurrency limiting restricts the number of operations executing at the same time rather than the number started during a time window.

141
SeniorAdvanced

What is load shedding?

Load shedding intentionally rejects or drops work when a system is overloaded so it can preserve capacity for requests it can successfully serve.

142
SeniorAdvanced

What is admission control?

Admission control decides whether new work should enter a system based on current capacity, quotas, resource state, or policy.

143
SeniorAdvanced

What is health checking in a distributed application?

Health checking exposes or evaluates whether an application instance and its dependencies are in a condition suitable for a particular purpose.

144
SeniorAdvanced

What is the difference between liveness and readiness checks?

A liveness check asks whether the process is alive enough that restarting it could help. A readiness check asks whether the instance is currently able to receive traffic.

145
SeniorAdvanced

How are health checks configured in ASP.NET Core?

ASP.NET Core provides health-check services and middleware. Applications can register checks for relevant components and expose endpoints used by infrastructure.

146
SeniorAdvanced

What is observability?

Observability is the ability to understand a system's internal state and behavior from the signals it produces. In distributed systems, this is essential for diagnosing failures that cross process and service boundaries.

147
SeniorAdvanced

What is structured logging?

Structured logging records events as named fields rather than only as preformatted text. This makes logs easier to query, aggregate, correlate, and analyze.

148
SeniorAdvanced

What are metrics and which system metrics are commonly monitored?

Metrics are numeric measurements aggregated over time. They are efficient for dashboards, alerts, capacity analysis, and identifying changes in system behavior.

149
SeniorAdvanced

What is distributed tracing?

Distributed tracing follows a request or workflow across multiple services and dependencies. Each operation is represented by a span, and related spans share a trace context.

150
SeniorAdvanced

What is OpenTelemetry and why is it useful in .NET?

OpenTelemetry is an open standard and ecosystem for generating, collecting, and exporting telemetry such as traces, metrics, and logs. It provides vendor-neutral instrumentation concepts and protocols.