![]() |
![]() |
![]()
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? |
|
|
![]() ![]() |
![]() |
Aktualny czas: 15.09.2025 - 03:08 |