📊 Sistem Performans Analizi Raporu

📅 Tarih: 2025-11-30 | 🎯 Tenant: ixtif.com | 👤 Talep: Sistem aşırı yavaş, sorunun analizi ve raporlanması.

📝 Genel Değerlendirme

Yapılan detaylı analiz sonucunda, sistemdeki aşırı yavaşlığın donanımsal bir yetersizlikten değil, birbiriyle ilişkili **iki kritik yazılım mimarisi ve yapılandırma sorunundan** kaynaklandığı tespit edilmiştir. Sorunlar, hem tüm sistemi etkileyen genel bir yavaşlığa hem de özellikle `ixtif.com` gibi tenant'larda yaşanan aşırı yavaşlamalara neden olmaktadır.

Aşağıda bu iki ana sorun ve çözüm önerileri detaylandırılmıştır.

🎯 Tespit Edilen Sorunlar ve Çözüm Önerileri

1. Arka Plan İşlem Darboğazı Kritik Öncelik

Bulgu: `ixtif.com` tenant'ında yaşanan aşırı yavaşlığın **ana nedeni budur**. Arka plan işlemlerini (mail gönderme, rapor oluşturma vb.) yürüten sistemde ciddi bir yapılandırma hatası ve darboğaz mevcuttur.

docker-compose.yml dosyasında, birbiriyle çakışan iki farklı kuyruk (queue) yönetim sistemi aynı anda çalışmaktadır: Hem modern olan Horizon hem de eski tip queue:work container'ları (`queue-general`, `queue-tenant`).

Daha da önemlisi, config/horizon.php dosyasında, tüm tenant'ların işlerini yürüten `tenant-supervisor` için işlem limiti (`maxProcesses`) bilinçli olarak **sadece 2'ye** düşürülmüştür. Bu durum, `ixtif.com`'dan gelen en ufak bir toplu işlem talebinde bile kuyruğun anında şişmesine ve sistemin yanıt veremez hale gelmesine yol açmaktadır.

Etkisi: Tenant'a özel işlemler (sipariş onayı, mail gönderimi vb.) dakikalarca, hatta saatlerce beklemede kalır. Kullanıcı açısından sistem "donmuş" veya "çökmüş" gibi görünür.

💡 Çözüm Önerisi

1. Çakışan kuyruk işçileri temizlenmelidir. `docker-compose.yml` dosyasından `queue-general` ve `queue-tenant` servisleri **tamamen kaldırılmalıdır**.

2. Tüm arka plan işlemleri sadece `horizon` servisi tarafından yönetilmelidir.

3. `config/horizon.php` dosyasındaki `tenant-supervisor` için `maxProcesses` değeri, sunucu kaynakları göz önünde bulundurularak dikkatlice ve kademeli olarak **daha makul bir seviyeye (örneğin, 8 veya 10)** yükseltilmelidir.

2. Laravel Optimizasyon Hatası Yüksek Öncelik

Bulgu: Tüm sistemi etkileyen genel bir yavaşlık mevcuttur. Bunun sebebi, Laravel'in en temel performans optimizasyonları olan config:cache ve route:cache komutlarının **başarısız olmasıdır**.

docker-compose.yml dosyasında tanımlanan birden fazla `app` container'ı (`app1`, `app2`, `app3`), aynı anda ve paylaşılmış bir `bootstrap/cache` dizinine yazmaya çalışarak bir "race condition" (yarış durumu) yaratmaktadır. Bu çakışma, cache dosyalarının düzgün oluşturulmasını engellemektedir.

Etkisi: Cacheleme yapılamadığı için, sistem her bir sayfa isteğinde onlarca yapılandırma ve rota dosyasını yeniden okumak, işlemek ve yorumlamak zorunda kalır. Bu durum, her istekte yüzlerce milisaniyelik ek bir yük bindirerek sitenin genelinde hissedilir bir yavaşlığa neden olur.

💡 Çözüm Önerisi

Container başlatma süreci yeniden düzenlenmelidir. Sadece **tek bir ana uygulama container'ı** (`app1` gibi) `config:cache`, `route:cache` ve `migrate` gibi başlangıç işlemlerini çalıştırmaktan sorumlu olmalıdır. Diğer container'lar bu işlemlerin tamamlanmasını bekleyip daha sonra sadece web servisini (PHP-FPM) başlatmalıdır. Bu, `docker-compose.yml` içinde `depends_on` ve özel sağlık kontrolü (healthcheck) script'leri ile sağlanabilir.