• 14-05-2021, 01:55:47
    #10
    Worker veya Message Queue sistemleri bunun için var. set_time_limit ve diğer türlü kullanıcıya veri gösterilen aynı zamanda bu ağır işlemleri yapan tüm yarım yamalak şeylerde php-fpm pool'unu meşgul edersiniz ve sunucuya ağır bir yük bindirirsiniz. Pool meşgul olunca da diğer kullanıcıların istekleri aşırı yavaşlar ve bazen istek alamaz duruma gelir.
  • 14-05-2021, 13:33:33
    #11
    dev
    Kurumsal Üye
    phpxtr adlı üyeden alıntı: mesajı görüntüle
    Yazdigim koddan dolayi timeout sorunu yasiyorum. Mantik olarak bir turlu oturtamadigim bir sıkıntım var.

    Ornek: sqlde 600 kullanici var ve bu kullanicilarin bilgileri aktif mi pasif mi diye bilgilerini bir apiye post atiyorum ve aktif veya pasif ise yanina 1-0 yazdiriyorum. Foreach ile curl atiyor surekli fakat 600 kullanicinin 230 tanesini yapiyor ve timeout veriyor. Bu tarz bir senaryo da siz olsaniz nasil timeout verdirmeden tum datayi kontrol ederdiniz
    Kendi sunucunuz var ise set_time_limit(0) set edip kullanabilirsiniz ve islemleri browser'dan yapmak yerine CLI ile yapabilirsiniz. php filname.php seklinde.

    Eger prof bir cozum ariyor iseniz "queue" olayini goz atabilirsiniz.
  • 15-05-2021, 05:02:18
    #12
    Bu tip sorunlarda kuyruk yapısı kullanmalısınız, bugün 600 olan veri yarın 6000 olabilir. Diğer tüm çözümler geçicidir. Önceki mesajlarda da bahsedildiği gibi CLI ile de komut oluşturup yürütebilirsiniz ama en sağlıklısı kuyruk yapısıdır.