![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 107 Pomógł: 0 Dołączył: 24.06.2010 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
mam zrobić coś takiego:
jest 10000 rekordow w bazie mam wybierac po 10 co 1minute do końca bazy i cos tam robic, skrypt ma wykonywac sie codziennie o ustalonej godzinie [tym to akurat cron moze sie zajac] czy f-cja sleep będzie tu przydatna? do głowy przychodzi mi coś takiego....
Ale nie wiem czy ma prawo to zadziałać przy 10 000 rekordach i co na to serwer :-). Zna ktoś lepsze rozwiązanie? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 728 Pomógł: 76 Dołączył: 12.06.2009 Ostrzeżenie: (0%) ![]() ![]() |
Tyle, że tutaj będzie ci pobierał cały czas pierwsze 10 rekordów, jeśli chcesz pobierać po kolei to musisz zmienną $i odczytywać i zapisywać do pliku lub bazy.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 2 958 Pomógł: 574 Dołączył: 23.09.2008 Skąd: wiesz, że tu jestem? Ostrzeżenie: (0%) ![]() ![]() |
Niekoniecznie wystarczy header() z odpowiednim parametrem
Ten post edytował CuteOne 1.12.2011, 09:04:16 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 107 Pomógł: 0 Dołączył: 24.06.2010 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Dzięki, wieczorkiem [teraz jestem w pracy] tak zrobię i... mam nadzieję, że zadziała...
ps czy z tym sleepem jak chce się wrzucić działanie skryptu do Crona to też będzie działać? Czy istnieje ryzyko, że nie pobierze całej bazy [limit czasu na wykonanie plików php na serwerze etc] Czy na drugi dzień będzie zresetowane $k, czy będzie chciało działać dalej z parametrem $k=10000... czy bezpieczniej wyzerować?
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 42 Pomógł: 0 Dołączył: 11.03.2010 Ostrzeżenie: (0%) ![]() ![]() |
Ja tam mam zapętlone skrypty ze sleepem i jest ok... zawsze możesz wyłączyć limit albo go zmienić chyba że to nie twój serwer a skrypty włączają się w safe mode.
Użyłem do tego screean-a jeszcze i zawsze mogę podejrzeć stan skryptu bo mi prinuje co robi i z jakimi parametrami. |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 77 Pomógł: 19 Dołączył: 13.02.2010 Ostrzeżenie: (0%) ![]() ![]() |
Mimo wszystko ja bym sobie dodal do tabeli kolumne ktora bedzie zawierac 1 lub 0(TRUE lub FALSE) i bral 10 rekordow ktore maja TRUE, robil cos z nimi, I zamienial w bazie na FALSE, po przesciu wszystkich rekordow, robie update kolumny zebym mial znow TRUE itd..
Wtedy skrypt nie musi działać cały czas, a jest wykonywany tylko co 1min przez crona. Ten post edytował Dominis 1.12.2011, 11:24:23 |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 42 Pomógł: 0 Dołączył: 11.03.2010 Ostrzeżenie: (0%) ![]() ![]() |
Jak tą drogą idziesz to nie lepiej dodać rekord albo 2 tabele z rekordem np: num i tam będzie wpisywany ostatnio modyfikowany rekord po id.
num ma 1 Akcja 1 pobiera num z tabeli zaczyna pobieranie 10 rekordów i zapisuje num + 10. num ma 11 Akcja 2 pobiera num z tabeli zaczyna pobieranie 10 rekordów i zapisuje num + 10. Przelecisz sobie całość co minute ze sleepem albo z wykorzystaniem crona i jest ok. |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 107 Pomógł: 0 Dołączył: 24.06.2010 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
coś mi ten sleep nie chciał sie budzic i pobierał mi tylko pierwsze 10 rekordów [nie odświeżał się]
zrobię to jednak w cronie co minute cały czas [nie wiem czy to nie będzie za bardzo serwera obciazac?]
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 5.10.2025 - 06:15 |