BM: Baca dalam Bahasa Melayu
World C3: Release & Deploy
Recreate, rolling, blue/green, canary
You will learn: four ways to swap old code for new, and when each one fits.
Checked with GitHub Actions 2026-10 on 31 Oct 2026
The problem
Tap each point on the timeline.
Friday, 5 pm. One push sends the new version to everyone. It has a bug. Tap each moment. How could it hurt fewer people?
Watch
Way 1: recreate: Stop the old version, then start the new one. Like closing the stall to swap the menu: users wait.. Close the stall, swap the menu, open again. The old version stops, then the new one starts. What do customers see in between?
Pick one answer.
Watch
Way 2: rolling update: Swap the copies one at a time, like changing cooks one by one. The stall never closes.. Swap the cooks one at a time. The stall never closes. Put the steps in order.
First step at the top. Put these in order. Use the arrows, or drag.
- Stop one copy of version 1
- Check that it is healthy
- Repeat until every copy is version 2
- Start one copy of version 2
Try it
Way 3: blue/green deployment: Two full kitchens. Test the new one, then flip the sign so everyone goes there. Flip back to undo.. Two full kitchens. Version 2 waits next to version 1. Test it, then switch everyone. Trouble? Switch back.
v2 is ready next to v1. Test it, or switch. Switch back if errors jump.
Users now: 100% on v1 (old), 0% on v2 (new).
v1 (old) v2 (new)
Minute 0
Users who hit a v2 error: 0 (limit 150)
Numbers, minute by minute
No traffic yet.
Hint
Test version 2 first. If it shows errors, keep version 1 live.Watch
Way 4: canary release: A few users get the new version first, like a few customers tasting a new dish. All good? Serve more.. A few customers taste the new dish first. All good? Serve more people. Sort each fact.
Drag a card into a box. Or tap the card, then tap the box.
Try it
Your turn. Send users to version 2, step by step. Watch the graph. Roll back before 150 users hit a bug.
Send a few users to v2. Watch the graph. Roll back if errors jump.
Users now: 100% on v1 (old), 0% on v2 (new).
v1 (old) v2 (new)
Minute 0
Users who hit a v2 error: 0 (limit 150)
Numbers, minute by minute
No traffic yet.
Hint
The version 2 line jumps over the alarm line? Press Roll back.Predict
Version 2 renames a database column. Version 1 crashes without the old name. Which way fits?
Pick one answer.
You did it!
You can now pick a safe way to swap versions.
Go deeper (optional)
Kubernetes does rolling updates by default (World K2). Cloudflare Workers can run a canary for you, called a gradual deployment. Upload a version with no traffic, then choose its share.
Real rep (optional): use a free test Worker, not your team’s. Send 10% to the new version, then roll back.
Bahasa Melayu
Jumaat, 5 petang. Satu push hantar versi baharu kepada semua orang. Ada bug. Tekan setiap detik. Macam mana nak kurangkan mangsa?
Cara 1: recreate. Tutup gerai, tukar menu, buka semula. Versi lama berhenti, kemudian versi baharu bermula. Apa pelanggan nampak di tengah-tengah?
Cara 2: rolling update. Tukar tukang masak seorang demi seorang. Gerai tak pernah tutup. Susun langkahnya.
Cara 3: blue/green. Dua dapur penuh. Versi 2 menunggu di sebelah versi 1. Uji dulu, kemudian alihkan semua orang. Ada masalah? Alih balik.
Cara 4: canary. Beberapa pelanggan rasa hidangan baharu dulu. Semua okey? Hidang kepada lebih ramai. Susun setiap fakta.
Giliran anda. Hantar pengguna ke versi 2, langkah demi langkah. Perhati graf. Rollback sebelum 150 pengguna kena bug.
Versi 2 tukar nama satu lajur pangkalan data. Versi 1 crash tanpa nama lama. Cara mana sesuai?
Kini anda boleh pilih cara selamat untuk tukar versi.
You finished this before. Practice is always welcome!
Official docs: Cloudflare: gradual deployments · Kubernetes: Deployments (rolling update)
You've learned for 25 minutes. A short break helps your brain.
Sprint done! Great focus. Stretch for a minute?