Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Kolejkowanie zadań i wykonywanie "w tle"
Forum PHP.pl > Forum > PHP
ravczy
Witam,

Uruchomiłem pewną aplikacje, która komunikuje się z użytkownikami przy pomocy maili. Problem polega na tym, że gdy serwer smtp jest trochę bardziej obciążony, to wysyłanie wiadomości trwa dość długo (jak na aplikacje webową). Wysyłanie maili powoduje, że ładowanie stron w przeglądarce trwa dość długo, a użytkownicy zniecierpliwieni kilka razy kilkają na przycisk, co powoduje niepotrzebne ponowne przesłanie formularza.

Moje pytanie jest następujące,

Czy istnieje w PHP mechanizm pozwalający kolejkować zadania, np. gdy wiem, że pewna funkcja aplikacji będzie wykonywać się długo, np. wysyłanie maili, to czy można by dodać to do kolejki zadań, a w tym samym czasie strona działa dalej nie oczekując aż ten mail się wyśle.
kbsucha
Do kolejkowania zadań i wykonywania ich regularnie sluzy CRON, w PHP nie widzialem takich cudów, jakbybyły to by było bardzo fajnie winksmiley.jpg

pozdr
dr_bonzo
1. wrzucasz zadania do bazki (czy gdzie tam) np zapisujesz w bazce emaile
2. cronem je dopiero wysylasz
ravczy
No szkoda że apache nie ma takiej możliwości. No cóż pokombinuje z cronem. Dzięki za pomysły.
donar
Wystarczy, że po przesłaniu formularza dodasz do cookie lub do sesji, iż ten formularz został już przesłany i przy wykonywaniu skryptu kolejny sprawdzający tą wartość w cookie lub sesji.Dzięki temu jak user kliknie 100 razy w przycisk, dana akcja wykona się raz. Oczywiście możesz użyć do tego baze, pliki, czy co tam chcesz tongue.gif Pozdrawiam.

Temat: odswiezanie_strony_zapis
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.