Mert Özen Her Satırda Daha İleri

Blog

Mert Özen'in yazılım geliştirme, backend, frontend ve DevOps üzerine blog yazıları.

Seriler
3 yazı bulundu #data-protection
Data Protection Derinlemesine: Key Ring, Rotation, Key Storage, Key'leri Şifrelemek ve Çoklu Instance
Güvenlik SERİ 02

Data Protection Derinlemesine: Key Ring, Rotation, Key Storage, Key'leri Şifrelemek ve Çoklu Instance

Çok instance'lı ASP.NET Core uygulamasında sebepsiz logout'lar ve boş gövdeli 400'ler genelde instance başına ayrı Data Protection key ring'inden gelir. Key ring'in ömrünü, rotation ve revocation'ı, purpose hiyerarşisini, dosya, Redis ve veritabanı store'larını, key'leri certificate ile şifrelemeyi ve SetApplicationName'in rolünü gerçek log'larla anlatıyoruz.

8 Kas 2026 12 dk 3
Zero-Downtime'ın Ön Koşulları: Graceful Shutdown, Readiness, Stateless Uygulama ve Geriye Uyumluluk
DevOps SERİ 02

Zero-Downtime'ın Ön Koşulları: Graceful Shutdown, Readiness, Stateless Uygulama ve Geriye Uyumluluk

Hiçbir deployment stratejisi, kapanırken işini bitirmeyen ve hazır olduğunu doğru söylemeyen bir uygulamayı kurtaramaz. Gerçek koşularla: ShutdownTimeout 2 sn'ye inince 5 sn'lik istek RST ile kopuyor, Docker'ın 1 sn'lik bekleme süresi 137 (SIGKILL) üretiyor, readiness drain sırasında 503 dönerken API 200 vermeye devam ediyor, ayrı Data Protection key ring'i CryptographicException fırlatıyor ve silinen Angular chunk'ı ChunkLoadError'a dönüşüyor.

8 Kas 2026 13 dk 5
Tek Sunucudan Milyonlarca Kullanıcıya: Vertical ve Horizontal Scaling, Stateless Tier
Yazılım Mimarisi SERİ 03

Tek Sunucudan Milyonlarca Kullanıcıya: Vertical ve Horizontal Scaling, Stateless Tier

Uygulama tier'ını horizontal ölçeklemenin şartı stateless olmak: session, Data Protection key ring'i, IMemoryCache, yerel dosyalar ve zamanlanmış işler instance'ın dışına alınmalı. İki instance'lı gerçek bir denemede session'ı Redis'e taşımak tek başına hiçbir şeyi düzeltmiyor, çünkü session ve authentication cookie'leri Data Protection key'leriyle şifreli; key ring de paylaşılıp SetApplicationName verildiğinde iki sunucu tek uygulama gibi davranıyor.

8 Kas 2026 11 dk 3
Blog Haritası