![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 260 Pomógł: 14 Dołączył: 8.09.2011 Ostrzeżenie: (0%) ![]() ![]() |
Witam. Mam może niezbyt typowe pytanie. Potrzebuje sposobu aby skrypt dzialal w tle przez caly czas.
Potrzebuje w PHP utworzyć demona - wątek/skrypt/cokolwiek co bedzie mi działało w tle i np co minute kontrolował stan aplikacji. Moja aplikacja umozliwia utworzenie turnieju, następnie daje n czasu na zapisanie sie do niego, i gdy nazbiera sie odpowiednia ilosc osob tworzy turniej, bitwy (ktore sa wpisami w bazie danych). I tu rodzi sie problem. Operacje pilnujace turniejów są zgrupowane w jednej klasie którą po prostu uruchamiam przy kazdym wyswietleniu skryptu ktory jest zwiazany z turniejami, klasa najpierw sama sprawdza czy nic sie nie pozmienialo a nastepnie jest cos tam uruchamiane z tego. Na razie mi to wystarcza, problem jest w tym ze gdybym chcial zrobic system powiadomien na maila np. za 10 minut masz turniej, a przez caly dzien nikt by nie wchodzil na strone to skrypt nie wykona sie ani razu i turniej sie nie utworzy w odpowiednim czasie, dopiero gdy ktos odswiezy strone. Dlatego wolalbym jakiegos demona zrobic. Jesli mozna tworzyc watki w php (krotko pisze, przerzucilem sie z asp) to utworzylbym cos w stylu wątku ktory dziala niezaleznie od skryptu (skrypt konczy sie a watek dziala dalej). A jak nie da sie to nie wiem. Max czas dzialania skryptu w php to 30 sekund wiec nie wiem jak to optymalnie rozwiazac. Moge pokombinowac sam i nie zawracac nikomu glowy na forum ale pewnie wyjdzie tak ze wymysle durne i nieoptymalne rozwiazanie a ktos juz to dawno przeanalizowal. Wiec prosze o podpowiedzi. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 2 958 Pomógł: 574 Dołączył: 23.09.2008 Skąd: wiesz, że tu jestem? Ostrzeżenie: (0%) ![]() ![]() |
Jeżeli skrypt masz na linuxie poczytaj w manualu o rodzinie funkcji pcntl_ (np. pcntl_fork), która to umożliwia "odłączenie" skryptu od konsoli. Jeżeli używasz winodowsa to w dziale gotowe rozwiązania znajdziesz mój mini poradnik o tworzeniu równolegle kilku demonów
Ten post edytował CuteOne 8.09.2011, 14:32:05 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 2.10.2025 - 21:22 |