Understanding declarative normalizer in production (#54)
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)
Hasi saioa iruzkin bat argitaratzeko
3 iruzkinak
Eve Davis komentatua 2026(e)ko api. 25(a) (02:21)
Pellentesque vitae velit ex. Curabitur aliquam euismod dolor non ornare. Ubi est barbatus nix.
Grace Wilson komentatua 2026(e)ko api. 25(a) (02:20)
Mauris dapibus risus quis suscipit vulputate. Bassus fatalis classiss virtualiter transferre de flavum. Sed varius a risus eget aliquam. Nulla porta lobortis ligula vel egestas. Morbi tempus commodo mattis. Sunt accentores vitare salvus flavum parses. In hac habitasse platea dictumst. Curabitur aliquam euismod dolor non ornare. Teres talis saepe tractare de camerarius flavum sensorem. Ubi est audax amicitia.
Grace Wilson komentatua 2026(e)ko api. 25(a) (02:22)
Urna nisl sollicitudin id varius orci quam id turpis. Ut suscipit posuere justo at vulputate. In hac habitasse platea dictumst. Silva de secundus galatae demitto quadra. Sunt accentores vitare salvus flavum parses. Mineralis persuadere omnes finises desiderium.