Starting Long Server PHP Scripts and Monitor their Status Part 2: Solving the Problem with Classes - Asynchronous Long Server Tasks package blog

Artikeln, del två i en serie, beskriver en PHP-lösning för att asynkront starta och övervaka långvariga serveruppgifter. Lösningen består av två huvudklasser: Starter för att initiera en uppgift via HTTP-förfrågan (med cURL som bakgrundsprocess) och Status för att spåra uppgiftens framsteg, där status lagras i en fil. Uppgiften delas upp i tre skript (starta, köra, begära Status) och är designad för att säkerställa att endast en instans av uppgiften körs åt gången genom att hantera statusfilen. Ett praktiskt exempel ges med en fildelningsservice där användare kan skicka filer utan att behöva vänta på att kopieringsprocessen ska slutföras, med möjlighet till en framstegsindikator. Kända begränsningar inkluderar beroendet av cURL-kommandot (inte PHP-extensionen) och att lösningen primärt är designad för Linux/Unix-system, då curl-syntaxen för bakgrundskörning inte fungerar på Windows.