mizraklar
Şimdilik 1 ile 5 arasında bazı işleri çalıştırmayı engelledim.
$schedule->command('integration:Customer customer1')
->withoutOverlapping($this->overLappingTime)
->runInBackground()
->hourlyAt(05)
->onFailure(function () {
$this->writeLog('Customer-customer1');
})
->unlessBetween($this->unlessBetweenStart, $this->unlessBetweenFinish);
32 gb ram var evet. Aslında sunucu 13 ile 20 gb arasında çalışıyor rutin. Sadece birkaç müşterinin entegrasyonu belirli saatlerde yığılmaya sebebiyet veriyor. Kuyruk içerisinde belirli saatlerde 1 milyon üzerinde iş oluyor. O zaman tıkanıyor sunucu.
Aynı cron işleyişinde dışarıdan ürün almam gerekli mesela. Ürün okuyabilmem için istek atıp, tutup joba parça parça atıyorum. Bu okumalar aynı süre zarfına gelince memory lerde sıkıntı oluyor.
Kaynağı xml , restfulapi veya soap servisleri üzerinden alınan dataları ilk okuduğumuzda limitlendirme olmadığı için bu sıkıntı oluyor. Ram'e aşırı yük biniyor.
Ayrıca bir db sorgusu yazdığımda connectionu disconnect yapmıyorum. 1 kere denedim bu olayı sorguların hepsi patladı 🙂