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
15 yazı bulundu #system-design
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
Back-of-the-Envelope Estimation: QPS, Storage, Bandwidth ve Availability Hesabı
Yazılım Mimarisi SERİ 02

Back-of-the-Envelope Estimation: QPS, Storage, Bandwidth ve Availability Hesabı

Back-of-the-envelope estimation, DAU'dan ortalama ve peak QPS'e, oradan storage, bandwidth ve availability'ye giden ve mertebe olarak doğru sonuç veren kısa bir hesap zinciridir. 10 milyon DAU'lu URL shortener'da peak ~1.700 QPS ve 5 yılda ~1 TB veri tek veritabanına sığarken, fotoğraf uygulamasında 55,6 Gbps egress CDN'i zorunlu kılıyor; %99,9 yılda 8,76 saat kesinti demek ve seri bileşenlerde availability çarpılıyor.

8 Kas 2026 13 dk 4
System Design Nedir, Nasıl Çalışılır? Requirement'lardan Deep Dive'a 4 Adımlı Yöntem
Yazılım Mimarisi SERİ 01

System Design Nedir, Nasıl Çalışılır? Requirement'lardan Deep Dive'a 4 Adımlı Yöntem

System design'a dört adımla yaklaşılır: requirement'ları ve scope'u netleştir, high-level design'ı çizip onay al, problemi taşıyan component'te deep dive yap, trade-off'ları söyleyip toparla. Kampanya günü çöken Bookstore örneğinde Little's law (L = λ × W) darboğazın CPU değil connection pool olduğunu kâğıt üstünde gösteriyor ve gerçek SqlClient çıktısı bunu doğruluyor.

8 Kas 2026 10 dk 4
Blog Haritası