![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 102 Pomógł: 0 Dołączył: 19.06.2015 Ostrzeżenie: (0%) ![]() ![]() |
Witam
Skrypt który "piszę" w bólach ogólnie działa w szczególności na lokalu ale na serwerze co chwila napotykam różnego rodzaju problemy a jednym z nich jest czas życia skryptu. W związku z tym moje pytanie jest takie, jak uruchomić skrypt przez jego własną instancję tj. Uruchamiam skrypt np 10 sekund a potem chciałbym uruchomić go jeszcze raz a obecny proces ubić i tak w kółko aż do wykonania wszystkiego co miał zrobić? Np takie coś
|
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 1 875 Pomógł: 230 Dołączył: 20.03.2005 Skąd: Będzin Ostrzeżenie: (0%) ![]() ![]() |
Poczytaj o rekurencji i wszystko Ci się wyjaśni
![]() http://phpedia.pl/wiki/Rekurencja https://stackoverflow.com/questions/2648968...function-in-php |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 102 Pomógł: 0 Dołączył: 19.06.2015 Ostrzeżenie: (0%) ![]() ![]() |
To nie o to chodzi bo skrypt i tak po dokładnie 450 sekundach zostanie zabity przez serwer, Chodzi o wywołanie jego kolejnej instancji np skrypt.php musi po 400 sekundach uruchomić nowy proces skrypt.php a sam siebie zabić.
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
cron?
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 102 Pomógł: 0 Dołączył: 19.06.2015 Ostrzeżenie: (0%) ![]() ![]() |
Coś więcej?
|
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
Ustawiasz sobie crona co 5 min niech odpala skrypt, a w samym skrypcie ubijasz po 4 np.
Chociaż lepiej byś powiedział co ten skrypt robi |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 1 875 Pomógł: 230 Dołączył: 20.03.2005 Skąd: Będzin Ostrzeżenie: (0%) ![]() ![]() |
Tak jak mówi Python, zamiast uruchamiać skrypt w skrypcie
![]() To użyj CRON, czyli harmonogramu zadań serwera. https://www.wikiwand.com/pl/Cron Możesz ustawić tak, że co minutę wywołuje skrypt PHP. Możesz nawet ustawić że co 10sekund będzie wykonywał się skrypt, ale nie zalecam. Ten post edytował Tomplus 17.06.2017, 11:11:50 |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 102 Pomógł: 0 Dołączył: 19.06.2015 Ostrzeżenie: (0%) ![]() ![]() |
Skrypt domyślnie analizuje adresy url (czy serwer działa czy nie)
Własnie o to mi chodzi żeby skrypt uruchomić z Crona a potem żeby się sam "replikowal". Zadanie może być wykonywane i przez parę godzin, więc trochę bym musiał tego dodać a też bez sensu jest żebym np ustawił przez 6 godzin co 5 minut bo jeżeli wszystko zrobi krócej to będzie działał bezczynnie. Może mu to zająć 30 minut a równie dobrze pół nocy. Wolałbym go uruchamiać jako kolejna instancja tak żeby w momencie kiedy skończy przerabiać bazę danych nie chodził na darmo. Skrypt ma działać tylko w nocy a nie cały czas. Ten post edytował sasiadstar 17.06.2017, 13:33:38 |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 1 875 Pomógł: 230 Dołączył: 20.03.2005 Skąd: Będzin Ostrzeżenie: (0%) ![]() ![]() |
To ustawiasz albo cron na okres czasu który ma pracować, albo w skrypcie ustawiasz warunek czasowy np. jeżeli 18:00 - 6:00 skrypt działa, else nic nie rób.
|
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 102 Pomógł: 0 Dołączył: 19.06.2015 Ostrzeżenie: (0%) ![]() ![]() |
Ok
Powiedzmy że pójdę tą drogą. Czy tak będzie ok godziny 0-6 minuty */5 |
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
Przecież możesz skrypt odpalać nawet co 5 min, a w samym skrypcie sprawdzać czy:
- inny skrypt nadal nie pracuje, jeśli tak to exit - jeśli inny nie pracuje to sprawdź czy jest coś do roboty - jeśli jest coś do roboty to działaj - jak nie ma nic do roboty to exit. |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 102 Pomógł: 0 Dołączył: 19.06.2015 Ostrzeżenie: (0%) ![]() ![]() |
No Ok więc Crone plus sprawdzanie czy skrypt jest uruchomiony jak nie to do roboty
To jeszcze mi podpowiedz jaka funkcja do tego służy (sprawdzająca czy skrypt jest uruchomiony czy nie. |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 6 378 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
Zapisz informacje o pracy do pliku i kasuj po zakończeniu pracy.
-------------------- |
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 102 Pomógł: 0 Dołączył: 19.06.2015 Ostrzeżenie: (0%) ![]() ![]() |
Strasznie tu kombinowane wszystko, ale podsunęliście mi mniej więcej jak to ma wyglądać, poszperałem trochę i daje gotowca prosto i przyjemnie bez udziwnień.
Tworzymy plik php i dodajemy do crona
Prawda jest taka że to jest to o co mi chodzilo,czyli uruchomienie skryptu z poziomu skryptu dodać tylko jakąś pętle i będzie pięknie chodzić. Można zamknąć temat |
|
|
![]()
Post
#15
|
|
![]() Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
To teraz uruchom sobie np. 5x tak "subskrypt" i zobacz co się będzie działo. potem dodatkowo ubij proces główny.
poza tym shell_exec nie wszędzie jest dostępne (shared hostingi) |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 8.07.2025 - 21:41 |