Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Powielanie procesów przez crona, Jak się tego ustrzec?
auto-all
post
Post #1





Grupa: Zarejestrowani
Postów: 49
Pomógł: 7
Dołączył: 2.04.2011
Skąd: Wawa

Ostrzeżenie: (0%)
-----


Witam

Problem polega na tym iż wskazany plik uruchomiony jest równocześnie przez kilka procesów.

Czas wykonania pliku zależy od ilości danych znajdujących się na serwerze, czasami będzie to 30sek a czasami dużo więcej niż ustawienie max_execution_time i skrypt zostaje zabity w trakcie działania.

Chciałbym zabezpieczyć aplikację na tyle aby takie sytuacje się nie zdarzały. Zarówno dla crona jaki dla uruchomień z przeglądarki (te drugie jak mniemam może być niewykonalne)

Poszukuje czegoś bardziej zaawansowanego niż ustawienie max_execution_time i set_time_limit() gdyż chce aby skrypt przetwarzał dane non-stop - 24/7 - a przy ustawieniu max_execution_time na 300 a gdy proces wykona się w 90sek. to mam niewykorzystane 210sek.

Zadania crona i ich powielanie (uruchamianie następnych gdy poprzedni jeszcze się nie zakończył)

Myślałem nad czymś takimi ale nie bardzo wiem czy to wykonalne i w jaki sposób można to osiągnąć:
1. Sprawdzanie czy działają jakieś procesy związane z tym plikiem, komendą, numerem ID rodzica.
2. Jeśli jakieś by wykrył to miałby czekać na zakończenie procesu, kończyć działanie (swoje) lub kończyć działanie procesu, który wykrył.
3. Po zakończeniu działania uruchomienie komendy za pomocą exec() w tle.

Skrypt działa na serwerze dedykowanym także nie ma ograniczeń w kreatywności.

Czekam na jakieś sugestie. Jak wy radzicie sobie z zadaniami, które serwer ma przetwarzać non-stop?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
batman
post
Post #2





Grupa: Moderatorzy
Postów: 2 921
Pomógł: 269
Dołączył: 11.08.2005
Skąd: 127.0.0.1




Cytat(phpion @ 17.02.2012, 10:17:52 ) *
co jeśli takowa osoba aktualnie śpi albo jest na urlopie? (IMG:style_emoticons/default/smile.gif)

To ma pecha i musi wstać albo zwlec się z plaży (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 4.10.2025 - 07:33