Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Automatyczne odświeżanie bardzo długo wykonującego się skryptu
Mody23
post
Post #1





Grupa: Zarejestrowani
Postów: 276
Pomógł: 0
Dołączył: 30.06.2010

Ostrzeżenie: (10%)
X----


Witam!

Posiadam skrypt, którego wykonanie trwa bardzo długo. Zabawa z set_time_limit() też nie pomaga. Oczywiście przy użyciu tego atrybutu skrypt potrafi pracować o wiele dłużej niż bez tego, ale i tak jest to za mało, aby skrypt podołał do końca, dlatego zastanawiam się czy da się jakoś zrobić odświeżanie, powiedzmy co 20 sekund, a po odświeżeniu skrypt zaczynałby pracę od momentu, w którym skończył przed odświeżeniem?

Wiem, że można kombinować z przekierowaniami, np.:

Kod
test.php?zacznij_id=545


w gecie można wrzucić miejsce, w którym zatrzymał się skrypt i viola, aczkolwiek nie do końca mi to rozwiązanie odpowiada. Da się bezpośrednio takie odświeżenie wrzucić w skrypt i zacząć pracę od momentu, w którym skrypt zakończył działanie?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Pyton_000
post
Post #2





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

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


Ogólnie php w wersji CLI czyli z konsoli nie ma limitu czasu wykonania domyślnie.

Aczkolwiek jeżeli to nie jest VPS lub Dedyk to na 90% takie ograniczenie jest ustalone.

Co do odświeżania to możesz bieżący progres zapisywać np. w pliku i przy odświeżeniu sprawdzić czy plik istnieje i odczytać początek od którego ma zacząć.

Po skończeniu plik usuwasz i tyle.
Dodatkowo w skrypcie dzięki temu możesz ustalić limit np. 500 operacji i koniec. Tak odpalany skrypt aż będzie brak wyników. Wtedy tylko do Crona powiedzmy co 10 min.
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: 6.10.2025 - 23:49