Mert Özen Further With Every Line

Blog

Mert Özen's blog posts on software development, backend, frontend, and DevOps.

Series
3 posts found #canary
End-to-End Zero Downtime: Deploying Bookstore with Blue-Green and Canary via GitHub Actions
DevOps PART 09

End-to-End Zero Downtime: Deploying Bookstore with Blue-Green and Canary via GitHub Actions

All pieces of the series in a single GitHub Actions workflow: build the image once, a migration gate and an expand migration bundle, deploy to the idle color, a smoke test through the preview, 10% and 50% canary gates, a full switch and a manual rollback job. Run locally with act, the pipeline failed four times before succeeding: a gate scanning Down(), act's artifact v7 incompatibility, a preview pointing at the old color, and too little canary traffic.

8 Nov 2026 15 min 5
Canary Releases: Shifting Traffic by Percentage, Deciding with Metrics and Automated Analysis
DevOps PART 05

Canary Releases: Shifting Traffic by Percentage, Deciding with Metrics and Automated Analysis

A canary runs the new version with a small share of traffic and decides by comparing it with a control running at the same time. Weights in Nginx (900/100, not sticky), a user-sticky canary with split_clients and the empty-key trap, sticky cookies in 1.30; 4.80% vs 0% over 4,000 requests but a meaningless result over 19, a gate returning WAIT/ABORT/PROMOTE, Gateway API weights, and Argo Rollouts aborting a faulty version automatically.

8 Nov 2026 13 min 5
Deploy vs Release: Why Downtime Happens and a Map of Deployment Strategies
DevOps PART 01

Deploy vs Release: Why Downtime Happens and a Map of Deployment Strategies

A deploy installs code in an environment, a release is when users see the new behavior; teams that can separate the two split the risk. In a single-container recreate deploy behind Nginx, 12 requests failed within 2.5 seconds. The five sources of downtime, a map of recreate, rolling, blue-green, canary, shadow, A/B and feature flags, a decision table, and the risk = blast radius × detection time calculation.

8 Nov 2026 10 min 4
Blog Map