Yazılar
Yayınladığım tüm yazılar.
Lock dosyasını commit'leyin
package.json bir aralık kaydeder, lock dosyası gerçek sonucu. Lock yoksa build makinesi siz test etmediğiniz bir sürümü kurar, hatayı üç hafta sonra bulursunuz.
GitHub Actions'ta cache ile build süresi
CI süresinin çoğu değişmeyen bağımlılığı yeniden kurmakla geçiyor. Doğru cache anahtarı, restore-keys ve Docker layer cache'i ile build dakikadan saniyeye iner.
MySQL'de utf8 değil utf8mb4 kullanın
MySQL'in utf8'i aslında utf8mb3, dört baytlık emoji'yi saklayamıyor. Düzeltme veritabanı, tablo, sütun ve bağlantının dördünde birden utf8mb4 gerektiriyor.
Shopify webhook'ta HMAC doğrulaması nasıl yapılır
X-Shopify-Hmac-Sha256 doğrulanmazsa URL'i öğrenen herkes sahte sipariş gönderir. Ham body, hash_equals ve doğrulamanın kuyruktan önce çalışması burada.
Cache-Control başlıklarını nginx'te doğru yazmak
Hash'li varlıklara immutable, HTML'e must-revalidate verilir. add_header'ın üst bloktan miras almaması, always parametresi ve gzip ayarı burada anlatılıyor.
Retry stratejisi: üstel geri çekilme ve jitter
Sabit aralıklı retry bir kesintiyi kendi kendine yarattığınız bir yığılmaya çeviriyor. Üstel geri çekilme, jitter ve retry bütçesi olmadan retry güvenli değil.