Həftə 11 · 22/23
Deploy, sirlər, müşahidə
6 dəqiqəlik oxu
Məşq otağında tamaşa mükəmməl gedir. Səhnədə isə işıq başqadır, zal böyükdür, mikrofon var. Eyni mətn, başqa şərtlər.
Canlı mühit fərqli domenlər, fərqli limitlər və real istifadəçilər deməkdir. «Mənim kompüterimdə işləyir» bir mühit haqqında məlumatdır, proqram haqqında yox.
local: http://localhost:3000 -> http://localhost:8787 (same site)
production: https://site.example -> https://api.example.dev (cross-site)Çox deyilən söz: Mənim kompüterimdə işləyir, deməli yayımlaya bilərəm.
Canlı mühitin domenləri, limitləri, sirləri və istifadəçiləri fərqlidir. Senior bilir: necə deploy etmək, bir dəqiqədə necə geri qaytarmaq, sirlər harada yaşayır (heç vaxt repoda yox), və bir şey qırılanda bunu istifadəçi yazmazdan əvvəl necə öyrənmək.
Rollback məşq edilmiş addımdır
Geri qaytarma əmrini xəta baş verməzdən əvvəl bil və bir dəfə sına. Ən pis anda sənədləri oxumaq istəməzsən.
Sən bunu istə
npx wrangler deployments list # what is live, and what was before
npx wrangler rollback # back to the previous Worker versionSirlər platformada yaşayır
Repoda yalnız sirrin adı olur. Dəyər platformanın sirr anbarındadır, lokal nüsxə isə gitignore-dadır.
Sən bunu istə
npx wrangler secret put RESEND_API_KEY # prompts for the value
# .gitignore
.env*.local
.dev.varsXərci metrik kimi izlə
AI API-yə hər çağırış pula başa gəlir. Tapşırığa uyğun ən kiçik modeli seç, təkrarlanan konteksti keşlə, istifadəçi başına limit qoy və aylıq hesabı təxmin et.
Diff oxuyanda soruş: Deploy-dan əvvəl soruş: lokalla canlı arasında nə fərqlidir? Rollback əmri nədir və nə qədər çəkir?
Terminlər
İndi sən yoxla
1Sıfırlama skripti hər addım üçün «uğurlu» yazır, amma məlumat dəyişməyib. İlk şübhə?
2Ödəniş provayderinin gizli açarı harada saxlanılır?
Hazır prompt
İngiliscədir, çünki terminlər ingiliscədir. Tərcümə etsən də terminləri saxla.
Write a deployment runbook for this project:
- how to deploy each part, and how to verify it is live
- how to roll back, and roughly how long that takes
- which secrets exist and where each one is set (never their values)
- what to check in the logs after a deploy
- everything that differs between local and production
(domains, cookies, CPU and memory limits, environment variables)
- every AI API call the app makes: which model, how often,
and an estimated monthly costÖz kodunda
- 1Runbook-u yaz və özün yoxla.
- 2Qəsdən bir rollback et və vaxtını ölç.
- 3Ən azı bir avtomatik xəbərdarlıq və ya gündəlik yoxlama əlavə et.
Bunu görəndə bitib: Deploy-u qəsdən geri qaytarmısan və bunun nə qədər çəkdiyini bilirsən.
Daha dərinə
Oxumaq üçün
- Designing Data-Intensive Applications (2nd edition) · Martin Kleppmann, Chris Riccomini, 2026 · İstismar rahatlığı (operability)
- Vibe Coding: Building Production-Grade Software With GenAI, Chat, Agents, and Beyond · Gene Kim, Steve Yegge, 2025 · Canlı mühitdə AI ilə qurulmuş proqram