Kavramın hikâyesi
Önce iş karşılığını gör, gerektiğinde bağlamı aç.
İlk taramaİşte karşılaşacağın sinyaller
Gerilim ve çözüm · Bölüm 01
Hangi problemi çözer?
Production kavramı hangi environment'ın gerçek kullanıcı etkisi taşıdığını, hangi version ve configuration'ın çalıştığını ve hangi sinyallerin normal operasyonu gösterdiğini ortaklaştırır.
Tam bağlamı açGerekçe, sınırlar ve kalan ayrıntı
Availability, scale ve access gibi gereksinimler burada daha yüksek önem kazanır. Kavram sorunu teknik olarak çözmez; etkisi ve sorumluluğu yüksek environment'ı doğru sınırlar.
Gerçek hayat · Bölüm 02
Gerçek iş senaryosu
SCN-005 bağlamında yeni version Production'a deploy edildikten sonra hata oranı artar. Junior önce gerçekten Production environment'ına hangi version'ın ne zaman deploy edildiğini doğrular.
Tam bağlamı açGerekçe, sınırlar ve kalan ayrıntı
Kullanıcı etkisini ve temel health sinyallerini kontrol eder; Staging'in geçmiş olmasını “Production sağlam” kanıtı saymaz. Değişiklik zaman çizelgesi, log/metric/trace kanıtı ve dependency durumunu ekip sürecine taşır; yetkisi dışında rastgele Production değişikliği yapmaz.
Duyacağın bağlam · Bölüm 03
Ekipte bunu nasıl duyabilirsin?
Temsili ekip konuşması: “Sorun tek pod'da görünmüyor diye Production sağlıklı demeyelim; kullanıcı hata oranını, dependency'leri ve deploy edilen version'ı birlikte doğrulayalım.”
Beklenti seviyesi · Bölüm 04
Junior hangi seviyede bilmeli?
- Tanı: Production, environment, workload, traffic, version, configuration, dependency, availability, health ve user impact terimlerini ayırır.
- Açıkla: Production'ın neden tek server veya branch olmadığını; gerçek kullanım ve operasyonel sorumluluk sınırı olduğunu anlatır.
- Uygula: Çalışan version ve son deployment zamanını doğrular; kullanıcı etkisi ile metric/log/trace kanıtını toplar; Staging sonucunu garanti gibi sunmaz.
- Şimdilik bilmesi gerekmeyen: Production topolojisi tasarlamak, SLO/on-call sistemi kurmak, incident command yürütmek veya disaster recovery planlamak.
İhtiyacın kökeni · Bölüm 05
Neden ortaya çıktı?
Yazılımın geliştirme ve test ortamındaki doğruluğu, gerçek kullanım altında sürekli hizmet verebildiğini göstermez. Gerçek traffic, veri, dış bağımlılıklar, güvenlik sınırları ve capacity gereksinimleri ayrı bir operasyonel bağlam oluşturur.
Tam bağlamı açGerekçe, sınırlar ve kalan ayrıntı
“Production” bu canlı bağlamı test ve Staging ortamlarından ayırmak, kullanıcı etkisi taşıyan değişiklik ve sorunları doğru adlandırmak için kullanılır.
Ekip etkisi · Bölüm 06
Şirketler neden kullanır?
Ekipler canlı sistemi Staging ve diğer environment'lardan ayırmak, deployment yetkisini korumak, çalışan version'ı izlemek ve kullanıcı deneyimini monitoring ile değerlendirmek için Production sınırı tanımlar.
Tam bağlamı açGerekçe, sınırlar ve kalan ayrıntı
Bu sınır tek server, cluster veya cloud hesabı olmak zorunda değildir. Sistem on-premises, managed service, serverless veya bunların birleşimi olabilir; gerçek tasarım ürünün availability, scale, security ve maliyet gereksinimlerine bağlıdır.
Karar alanı · Bölüm 07
Trade-off ve bağlam
Daha yüksek availability, isolation, scale ve gözlemlenebilirlik maliyet ve operasyonel karmaşıklık getirir. Tek makine küçük bir workload için bilinçli tercih olabilir; kritik hizmette single point of failure riski taşır.
Tam bağlamı açGerekçe, sınırlar ve kalan ayrıntı
Monitoring aracı kurmak sistemi kendiliğinden anlaşılır yapmaz; doğru sinyal, erişim ve ekip pratiği gerekir. Production'a erişimi gereğinden fazla açmak risklidir, gereğinden fazla kapatmak ise teşhis ve iyileştirmeyi yavaşlatabilir.
Yanılgı radarı · Bölüm 08
Yaygın yanlış anlamalar
- “Production tek bir sunucudur.” Yanlış; canlı environment birçok fiziksel, sanal veya managed bileşenden oluşabilir.
- “
productionbranch'ine merge edildiyse deploy tamamdır.” Yanlış; branch ve çalışan environment durumu ayrı kanıt gerektirir. - “Staging ile Production aynıdır.” Yanlış; gerçek traffic, data, scale, access ve dış bağımlılıklar farklı olabilir.
- “Production'a deploy edilen her özellik kullanıcıya release edilmiştir.” Yanlış; deployment ile release ayrılabilir.
- “Production issue her zaman son kod değişikliğidir.” Yanlış; configuration, dependency, infrastructure, capacity ve human error da neden olabilir.
- “Monitoring dashboard'ı varsa Production anlaşılmıştır.” Yanlış; sinyallerin kullanıcı durumu ve teşhis ihtiyacıyla ilişkili olması gerekir.
Gerilim ve çözüm1. bölüm