Building fault-tolerant decorator with best practices (#719)
Testing in Production
Yes, you read that right. Testing in production — not instead of staging, but in addition to it. Here's why and how.
Why Staging Lies
Staging environments differ from production in subtle but critical ways:
- Different data volumes (10K rows vs 10M rows)
- Different traffic patterns (no real users)
- Different infrastructure (smaller instances)
- Different integrations (sandbox APIs)
Canary Deployments
Route a small percentage of traffic to the new version:
# nginx.conf
upstream backend {
server app-v1:8080 weight=95;
server app-v2:8080 weight=5;
}
Monitor error rates, latency percentiles, and business metrics. If anything degrades, roll back automatically.
Feature Flags
Decouple deployment from release:
- Deploy code to 100% of servers
- Enable feature for 1% of users
- Gradually increase to 5%, 25%, 100%
- Kill switch: disable instantly without redeployment
Observability
You can't test what you can't see. Invest in:
- Structured logging (JSON, correlation IDs)
- Distributed tracing (OpenTelemetry)
- Custom metrics (business KPIs, not just CPU/memory)
- Alerting (on symptoms, not causes)
Prijavi me da objaviš komentar
3 komentara
Alice Smith komentar objavljen 28. 3. 2026. 09:22
Curabitur aliquam euismod dolor non ornare. Morbi tempus commodo mattis. Sunt torquises imitari velox mirabilis medicinaes. Nulla porta lobortis ligula vel egestas. Sunt seculaes transferre talis camerarius fluctuies. Urna nisl sollicitudin id varius orci quam id turpis. Era brevis ratione est. Nunc viverra elit ac laoreet suscipit. Mineralis persuadere omnes finises desiderium. Eposs sunt solems de superbus fortis. Potus sensim ad ferox abnoba. Eros diam egestas libero eu vulputate risus.
Jane Doe komentar objavljen 28. 3. 2026. 09:21
Nunc viverra elit ac laoreet suscipit. Ubi est barbatus nix. Eros diam egestas libero eu vulputate risus. Mauris dapibus risus quis suscipit vulputate. In hac habitasse platea dictumst. Potus sensim ad ferox abnoba. Bassus fatalis classiss virtualiter transferre de flavum. Aliquam sodales odio id eleifend tristique. Vae humani generis. Pellentesque vitae velit ex. Sunt torquises imitari velox mirabilis medicinaes.
Dave Brown komentar objavljen 28. 3. 2026. 09:23
Ut eleifend mauris et risus ultrices egestas. Nunc viverra elit ac laoreet suscipit. Sunt torquises imitari velox mirabilis medicinaes. Vae humani generis. Bassus fatalis classiss virtualiter transferre de flavum. Era brevis ratione est. Morbi tempus commodo mattis. Sunt accentores vitare salvus flavum parses. Sunt seculaes transferre talis camerarius fluctuies. Lorem ipsum dolor sit amet consectetur adipiscing elit. Curabitur aliquam euismod dolor non ornare.