sivy
27.01.2006, 11:23:35
witam!
na wstępie -> przeczytałem (chyba) wszystko o cron'ie i nie mam zamiaru powielać tego tematu.
chodzi mi jednak o to, by uruchomić pewien skrypt, ale z większą dokładnością niż to oferuje cron. chciałbym -> co do sekundy.
dałoby się coś takiego zrealizować nie mając bezpośredniego dostępu do serwera?
pozdrawiam!
ActivePlayer
27.01.2006, 12:01:54
mozesz sobie napisac skrypt, działający w tle, i uruchamiający pewne usługi o danych porach... wtedy mozesz nawet z dokładnoscią co do milisekundy ^^
sivy
28.01.2006, 17:03:31
yyyyy... a jak zrobić żeby se w tle pracował? nie bedzie jakiego time-out'owego wykopa z serwera??
a jeśli to tak ma śmigać... to gdzie mam szukać informacji o tym?
PMadej
28.01.2006, 17:26:36
moj cron dziala co do sekundy wiec nie wiem za bardzo czemu ci on nie pasuje. a skrypt dzialajacy w tle to nie bedzie nic innego jak kolejny daemon cron'a bo bedzie robil to samo ... czyli uruchamial skrypty o konkretnej godzinie minucie no moze i sekundzie jak ci to jest potrzebne zeby wywolac skrypt o 13:43:17,
skrypt musi zawierac petle nieskonczona z dodanym sleep(1) i sprawdzanie czasu, jesli czas sie zgadza z ustawionym dla danego skryptu jest odpalany,
jeszcze jedno bez dostepu do powloki na serwerze nie odpalisz tego skryptu
sivy
28.01.2006, 19:33:59
no już odpowiadam...
dostępu do powłoki nie mam, a mój cron ma dokładność 1min...
dr_bonzo
28.01.2006, 19:37:59
Nie dokladnosc a minimalna czestotliwosc uruchamiania procesow.
Uruchom sobie cronem RAZ swoj skrypt ktory bedzie co sekunde robil to co ma robic
sivy
29.01.2006, 00:51:22
pisząc dokładność miałem na myśli to, że nijak nie ustawię konkretnej żądanej przeze mnie godziny:minuty:sekundy... w najgorszym wypadku więc będę miał +- 30 sekund pomyłki...
a teraz co do koncepcji pojedynczego uruchomienia skryptu:
1. jak go ewentualnie bede mógł zatrzymać? (usunąć plik z serwera??)
2. po krótkim czasie mi się rozsynchronizuje- przecież samo wykonanie skryptu też zajmie określony czas, a nie sposób dokładnie tego przewidzieć ile bedzie trwało wykonanie...
jakieś inne koncepcje?
dr_bonzo
29.01.2006, 01:44:42
1. Tworzysz demona chodzacego caly czas w tle i co sekunde tworzacego nowy proces (lub watek) (po co ci taka czestotliwosc?

) (tu znow mozna miec zastrzerzenia ze w sekunde to proces sie nie uruchomi, itd), ktory robi to co ma robic. Co sekunde uruchomiony zostanie skrypt/program, ktory bedzie sie produkowal przez
nieokreslony czas, bycmoze rownoczesnie z innymi skryptami operujac na tych samych danych, itd...
2. Moze napisz co chcesz uzyskac
sivy
29.01.2006, 02:29:46
może inaczej spróbuję...
nie potrzebuję, a raczej nawet nie chcę takiej częstotliwości.
a co chcę?
otóż chcę mieć możliwość uruchomienia określonego skryptu o dokładnym czasie (powiedzmy co do +- sekundy). to kiedy by się to miało wykonać powiedzmy że pobierałbym z jakiejś bazy...
natomiast uruchamianie jakichkolwiek programów, raczej nie wchodzi w grę. oprzeć to muszę wyłącznie o dostęp poprzez ftp do konta... no + cPanel z cronem (który może się uruchamiać nie częściej niż co minutę).
reasumując zastanawiam się czy da się to zrobić w oparciu o narzędzia, które wyżej wymieniłem...
pozdrawiam!
PMadej
29.01.2006, 03:15:29
da się.
Ustawiasz w cronie odpalenie co do minuty skryptu. nastepnie w skrypcie ustawiasz sleep(liczba sekund o ktorej ma byc odpalony skrypt) i po tym reszte skryptu
jak nie o to ci chodzi to ja juz innych pomyslow nie mam albo nie rozumiem twojego toku rozumowania.
ActivePlayer
29.01.2006, 10:58:02
uruchamiasz cronem skrypt powiedzmy 3 sekundy wczesniej.
w skrypcie masz tak:
<?php
// pobieranie potrzebnych danych
while($czas_kiedy_ma_sie_uruchomic<current_czas){;}
// kod ktory ma sie uruchomic w danej sekundzie
?>
i masz dokładnosc co do sekundy, a uruchamiasz to ~~~3 sec wczesniej dla pewnosci, ze dane zdążą sie pobrac itd.
sivy
29.01.2006, 13:21:59
ok, dzięki, popróbuję

hehe! spoko, bo nie wykopuje z serweka jak się dużo sleep'ów daje więc problem rozwiązany do końca

(sprawdzałem dla sleepów do 100sekund)
dzięki wszystkim za zainteresowanie i pomoc
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.