Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Funkcja Sleep, Zamiast corn
xamrex
post
Post #1





Grupa: Zarejestrowani
Postów: 267
Pomógł: 1
Dołączył: 10.08.2007

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


Witam. Ostatnio napisałem skrypt, który dodaje newsy co 3 dni o 12.00
Oczywiście musiałem dodać to do crona.
Jednak nie działa to tak jak chce.

Zauważyłem, że w PHP jest ciekawa funkcja SLEEP.
Chciałbym dowiedzieć się jakie ona ma wady.
Jeśli dałbym taką pętlę
  1. for ($i, $i<99, $i++){
  2. mysql_query(insert into tabela values $wartosc);
  3. sleep(259200);}

Czy działało by to podobnie do crona? (zakładając, że uruchomiłbym skrypt o 12.00)
Jeśli $wartość jest pobierana z pliku to czy gdy w czasie pracy skryptu podmienię plik i zmienię treść zmiennej wartość to czy PHP będzie wrzucać do mysql wartość która jest podana w czasie uruchomienia skryptu czy tą nową?

Ten post edytował xamrex 18.08.2010, 14:40:58
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
wookieb
post
Post #2





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Maksymalny czas wykonywania skryptu oczywiście można wyłączyć poprzez ustawienie go na 0 i po kłopocie.
Go to the top of the page
+Quote Post
zegarek84
post
Post #3





Grupa: Zarejestrowani
Postów: 1 332
Pomógł: 294
Dołączył: 12.10.2008
Skąd: Olkusz

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


Cytat(wookieb @ 18.08.2010, 15:51:49 ) *
Maksymalny czas wykonywania skryptu oczywiście można wyłączyć poprzez ustawienie go na 0 i po kłopocie.
jak to był raz jeden temat gdzie dowodziłem, że nie trzeba zmieniać maksymalnego czasu wykonania by sleep ustawić na np 1 godzinę - nawet podawałem linki do manuala, gdzie pisało, że to nie żaden bug a bugiem jest to jak reaguje na niego windows [gdzie sleep jest wliczany do czasu wykonywania]... co nie znaczy, że na innych systemach skrypt będzie działał w nieskończoność - fakt, że sleep tam nie jest wliczany do czasu wykonywania skryptu ale i procesor nie jest obciążony - gdy idzie dalej skrypt i jest np while(true) to to się maksymalnie wykona 30sekund [no chyba, że zmienimy ustawienia]...

coby sobie na bazie tego pseudo crona zrobić pasuje jeszcze zainteresować się funkcjami typu ignore_user_abord [jakoś tak się zwie] i czas wyliczać dynamicznie, gdzieś zapisywać co jakiś czasz, że skrypt działa coby móc kontrolować w tle [oderwany proces] i i jeszcze zaplanować, jak długo może maksymalnie skrypt nie dawać znaku życia - jeśli żyje procesu nie uruchamiamy, jak padnięty to odpalamy od nowa... oczywiście wartość pod sleep powinno wyliczać się dynamicznie... cron+sleep daje sporo możliwości.... a jeśli chcemy pozbyć się crona to pasowało by by na różnych serwerach monitorowały się skrypty i w razie potrzeby by ożywał taki proces...
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: 1.10.2025 - 13:08