İşlediğim satırları aynı anda güncellerken chunk yerine chunkById mı kullanmalıyım?
Satır başına gerçek iş varsa `chunkById()` kullanıp cursor kolonuna dokunmayın; iş yalnız bir kolonu güncellemekse tek bir set-based `UPDATE`'e geçin.
Etiket
Laravel framework'ü ile modern PHP uygulamaları geliştirme.
Bu etikette 11 cevaplanmış soru var.
Satır başına gerçek iş varsa `chunkById()` kullanıp cursor kolonuna dokunmayın; iş yalnız bir kolonu güncellemekse tek bir set-based `UPDATE`'e geçin.
Kullanıcıyı build-time `ARG UID` ile sabitleyin, `COPY --chown` kullanın, named volume'de entrypoint yalnız `storage` ve `bootstrap/cache`'i chown etsin.
DB'de integer cent, modelde immutable `Money`: eşlemeyi tek bir `CastsAttributes` sınıfına toplayın, currency'yi aynı cast'ta ikinci kolon yapın.
Lokal ve CI'da tam katı (throw) çalıştırın; production'da ayarı açık tutup ihlali handleLazyLoadingViolationUsing ile isteği çökertmeden log'layın.
Tünel sağlam bir desen ama tek yol bağımlılığıdır; mevcut Caddy kurulumunda kalıp origin'i Cloudflare IP'lerine kilitleyin ve origin pulls ekleyin.
Kolonu nullable ekleyip backfill'i ayrı throttle'lı bir adıma alın, migration'ı deploy'dan ayrı bir aşamada koşturun, eskiyi sonraki release'te düşürün.
Symlink'i çevirdikten sonra PHP-FPM'i graceful reload edin (restart değil); Octane'deyseniz worker'lar için octane:reload şart, opcache_reset isteğe bağlı.
İşe `tries` ve `backoff` verin: sınır dolunca Laravel işi `failed_jobs`'a taşır, `JobFailed` listener'ı alert eder, düzelen işi `queue:retry` geri oynatır.
Breaker tek başına yetmez: `connect_timeout` ve `timeout`'u 800ms-2s'ye çekin, bağımlılığı bulkhead ile izole edin, cache'li bir fallback tanımlayın.
2-5 GB dosyayı presigned URL ya da X-Accel-Redirect ile PHP'nin dışından servis edin; zorundaysanız readStream ile chunk'layıp buffering'i kapatın.