Skocz do zawartości

Zarządzanie Cron'em z poziomu kodu PHP


Tomaszz

Rekomendowane odpowiedzi

Staram się napisać klasę do zarządzania pracami crona w PHP w celu zdefiniowania cyklicznych akcji przez użytkownika. Starałem się robić to poprzez ssh2_connect(), ale wszystkie serwery jakie znam mają zablokowaną tę funkcję.

Czy jest jakiś inny sposób?

Ew. czy da się z tego wybrnąć jakoś inaczej niż poprzez ręczne zdefiniowanie crona co minutę i sprawdzanie w bazie zadań do wykonania?

Odnośnik do komentarza
Udostępnij na innych stronach

@Ew. czy da się z tego wybrnąć jakoś inaczej

Tak, pisząc w C, javie itd, program który działający w tle jako demon będzie co np n sekund odwołał się do źródła danych z zapisanymi zadaniami do wywołania -wykonania .

HTTP 200 usługi IT -> Dariusz Janicki | Realizacja serwisów www oraz oprogramowania w PHP / C# / Golang / Node.js / MySQL/ Laravel
Komory normobaryczne - normobaria.tech Wykonawca montażu i instalacji komory normobarii

Odnośnik do komentarza
Udostępnij na innych stronach

@Ew. czy da się z tego wybrnąć jakoś inaczej

Tak, pisząc w C, javie itd, program który działający w tle jako demon będzie co np n sekund odwołał się do źródła danych z zapisanymi zadaniami do wywołania -wykonania .

A czy to nie na to samo wyjdzie? Wykonanie co minutę skryptu php, a odpalenie demona na stałę?

Obciążeniowo to nawet chyba na korzyść PHP..

Odnośnik do komentarza
Udostępnij na innych stronach

OK, widzę, że "wiosenny" jesteś w tych zagadnieniach więc to by było na tyle z mojej strony...

HTTP 200 usługi IT -> Dariusz Janicki | Realizacja serwisów www oraz oprogramowania w PHP / C# / Golang / Node.js / MySQL/ Laravel
Komory normobaryczne - normobaria.tech Wykonawca montażu i instalacji komory normobarii

Odnośnik do komentarza
Udostępnij na innych stronach

@nie prosciej odpalic php i niech sobie chodzi w kolo (w petli nieskonczonej)

Wiec napisz nam jak to byś zrobił w praktyce :) ?

HTTP 200 usługi IT -> Dariusz Janicki | Realizacja serwisów www oraz oprogramowania w PHP / C# / Golang / Node.js / MySQL/ Laravel
Komory normobaryczne - normobaria.tech Wykonawca montażu i instalacji komory normobarii

Odnośnik do komentarza
Udostępnij na innych stronach

@Krótko mówiąc mion, by ci powiedzial, ale musisz zapłacić.

Krótko mówiąc sam bym chciał się tego dowiedzieć jak można to zrealizować w praktyce

"nie prosciej odpalic php i niech sobie chodzi w kolo (w petli nieskonczonej)"

Skoro autor tego zdania "wie"... dlaczego nie powie :)

HTTP 200 usługi IT -> Dariusz Janicki | Realizacja serwisów www oraz oprogramowania w PHP / C# / Golang / Node.js / MySQL/ Laravel
Komory normobaryczne - normobaria.tech Wykonawca montażu i instalacji komory normobarii

Odnośnik do komentarza
Udostępnij na innych stronach

na moje nie da sie na obcym hostingu/serwerze zrobic inaczej niz cron + baza jednak wiele z tych zadan mozna 'przemycic' w czasie wykonywania innych skryptow

dla przykladu "jakies dane wygasaja po okreslonym czasie" i moze to robic cron przez sprawdzenie bazy ale moze to zrobic skrypt niepowiazany z cron tylko wywolywany w czasie jaiegos innego zdarzenia na zasadzie: sprawdzam czy wygaslo i jezeli tak to aktualizacja danych w bazie ze wygaslo

co do petli nieskonczonej to z tego co wiem wiekszosc serwerow jest ustawiona na maksymalny czas wykonywania skyptu php 30 sek czyli takiej mozliwosci nie ma, ale jezeli jest to chetnie sie o niej dowiem

Odnośnik do komentarza
Udostępnij na innych stronach

@czas wykonywania skyptu php 30 sek

To akurat nie ma znaczenia, bo na dedyku czy VPS'ie możesz sobie ustawić bez limitu wykonywania. Chodzi o to, że nie ma konkretnej możliwości możliwościowy uruchomienia skryptu PHP by działał w tle jako usługa nawet z nieskończoną pętla.

- Uruchomisz w przeglądarce - owszem będzie działać do czasu, aż nie zamkniesz okna przeglądarki lub nie zerwie się połączenie z serwerem - Wywołanie w konsoli jako PHP CLI https://php.net/manual/en/features.commandline.php to samo co wyżej.

Ewentualnie tworzenie procesów działających w tle "demonów" za pomocą funkcji z z grupy: https://www.php.net/manual/en/ref.pcntl.php

HTTP 200 usługi IT -> Dariusz Janicki | Realizacja serwisów www oraz oprogramowania w PHP / C# / Golang / Node.js / MySQL/ Laravel
Komory normobaryczne - normobaria.tech Wykonawca montażu i instalacji komory normobarii

Odnośnik do komentarza
Udostępnij na innych stronach

Krótko mówiąc mion, by ci powiedzial, ale musisz zapłacić. Zapomniał od czego jest forum chyba.

@Mion ma więcej podziękowań niż Ty postów, dostał je za co, jak myślisz? Więc przemyśl następnym razem co piszesz.

P.S. Przepraszam za OT. Wkurzyłem się ciut :D

Piłeś? Nie jedź (i nie loguj się na forum) !

Siciliano: Robić szeptankę tutaj to jak sprawdzać w zbiorniku poziom paliwa zapalniczką.

Odnośnik do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę. Warunki użytkowania Polityka prywatności