HTTP yanıtı gönderdikten sonra PHP yürütülmesine devam

0 Cevap php

Nasıl PHP 5.2 (apache mod_php olarak çalışan) müşteriye tam bir HTTP yanıtı göndermek ve daha sonra bir dakika daha operasyonlarını yürütme tutmak olabilir?

The long story:

Birkaç uzun veritabanı istekleri yürütmek ve çalıştırmak için 45 ila 60 saniye sürer e-posta göndermek zorunda olan bir PHP komut dosyası var. Bu script hiçbir kontrole sahip bir uygulama tarafından denir. Ben PHP script (çoğunlukla geçersiz parametre hatası) alınan hata mesajlarını bildirmek için uygulama gerekir.

Uygulama 45 saniyeden daha kısa bir zaman aşımı süresi (Ben tam değerini bilmiyorum) sahiptir ve bu nedenle bir hata olarak PHP komut her yürütülmesine kaydeder. Bu nedenle, mümkün olduğunca hızlı (ideal, en kısa sürede girdi parametreleri valide edilmiş gibi) müşteriye tam HTTP yanıtı göndermek ve daha sonra veritabanı ve e-posta işleme çalıştırmak için PHP gerekir.

Ben mod_php'yi çalışan, bu yüzden pcntl_fork kullanılamaz değilim. Ben veritabanına işlenmiş ve cron gelen fiili süreci çalıştırmak için veri kaydetme bu yolumu işe yarayabilir, ama ben kısa bir çözüm arıyorum.

0 Cevap