Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2017-04-11 15:08:31

  debbie - Użytkownik

debbie
Użytkownik
Zarejestrowany: 2006-09-19

Wydłuzenie działania while'a oraz parametry php przy długich skryptach

Witam,

Mam takie dwie sprawy,
czy można wydłużyć wykonywanie pętli while ( np aby każdy krok miał 10 sekundowa przerwę? )
Wykonuje zapytanie do bazy danych - dane wykonywane są standardowo za pomocą while'a
ale zaszła potrzeba aby kolejny rekord sprawdzony został dopiero po 10-ciu sekundach.

Druga sprawa to php. Pamiętacie paramert w php.ini odpowiadający za długie wykonywanie skryptów?
Chodzi o to że skrypt może się wykonywac z 20 minut. Tak zeby nie przerwało mi pracy przez jakiś zbyt nisko
ustawiony parametr a nie pamiętam który dokładnie za to odpowiadał.
pozdrawiam


debbie
Wrócę jak zjem zupę i drugie danie - tyle
a oto ta zupa:

Offline

 

#2  2017-04-11 15:54:20

  ethanak - Użytkownik

ethanak
Użytkownik
Skąd: Ungwenor
Zarejestrowany: 2010-07-19
Serwis

Re: Wydłuzenie działania while'a oraz parametry php przy długich skryptach

1. sleep
2. max_execution_time
3. Jest taka fajna strona, nazywa się php.net, naprawdę uważasz że to forum jest interfejsem do tej strony?


Nim mechaniczne larum zagrasz mi, kanalio,
głosząc nadejście Javy - śmiertelnego wroga!
Zespół Adwokacki Dyskrecja

Offline

 

#3  2017-04-11 15:59:18

  multim - Użytkownik

multim
Użytkownik
Zarejestrowany: 2015-08-29

Re: Wydłuzenie działania while'a oraz parametry php przy długich skryptach

Offline

 

#4  2017-07-13 15:14:20

  woowoowoo - Nowy użytkownik

woowoowoo
Nowy użytkownik
Skąd: wrocław
Zarejestrowany: 2017-07-13

Re: Wydłuzenie działania while'a oraz parametry php przy długich skryptach

długie skrypty, jeśli jest taka możliwość, lepiej podzielić na krótsze segmenty i odpalać kawałkami z crona

Offline

 

#5  2017-07-13 15:23:57

  ethanak - Użytkownik

ethanak
Użytkownik
Skąd: Ungwenor
Zarejestrowany: 2010-07-19
Serwis

Re: Wydłuzenie działania while'a oraz parametry php przy długich skryptach

Mistrzu, uświadom nas maluczkich, jako to z crona odpalić cokolwiek co 10 sekund...
BTW od dawna jestem przekonany że tzw. "programiści PHP" mają pewne problemy z logicznym myśleniem... I jakoś wszyscy mi udowadniają że mam rację.


Nim mechaniczne larum zagrasz mi, kanalio,
głosząc nadejście Javy - śmiertelnego wroga!
Zespół Adwokacki Dyskrecja

Offline

 

#6  2017-07-13 15:33:29

  woowoowoo - Nowy użytkownik

woowoowoo
Nowy użytkownik
Skąd: wrocław
Zarejestrowany: 2017-07-13

Re: Wydłuzenie działania while'a oraz parametry php przy długich skryptach

20 minut wykonywania skryptu można spokojnie podzielić i odpalić z crona

Ostatnio edytowany przez woowoowoo (2017-07-13 15:35:30)

Offline

 

#7  2017-07-13 15:39:50

  ethanak - Użytkownik

ethanak
Użytkownik
Skąd: Ungwenor
Zarejestrowany: 2010-07-19
Serwis

Re: Wydłuzenie działania while'a oraz parametry php przy długich skryptach

Właśnie utwierdziłeś mnie w moim przekonaniu o jakości myślenia tzw. "programistów PHP".


Nim mechaniczne larum zagrasz mi, kanalio,
głosząc nadejście Javy - śmiertelnego wroga!
Zespół Adwokacki Dyskrecja

Offline

 

#8  2017-07-13 15:44:34

  woowoowoo - Nowy użytkownik

woowoowoo
Nowy użytkownik
Skąd: wrocław
Zarejestrowany: 2017-07-13

Re: Wydłuzenie działania while'a oraz parametry php przy długich skryptach

dobry argument i niezły wkład do tematu.. ale może nie róbmy już OT?

Offline

 

#9  2017-07-13 15:53:17

  ethanak - Użytkownik

ethanak
Użytkownik
Skąd: Ungwenor
Zarejestrowany: 2010-07-19
Serwis

Re: Wydłuzenie działania while'a oraz parametry php przy długich skryptach

Sam zrobiłeś i teraz cierp.


Nim mechaniczne larum zagrasz mi, kanalio,
głosząc nadejście Javy - śmiertelnego wroga!
Zespół Adwokacki Dyskrecja

Offline

 

#10  2017-07-13 17:29:42

  mati75 - Psuj

mati75
Psuj
Skąd: masz ten towar?
Zarejestrowany: 2010-03-14

Re: Wydłuzenie działania while'a oraz parametry php przy długich skryptach

ethanak napisał(-a):

Mistrzu, uświadom nas maluczkich, jako to z crona odpalić cokolwiek co 10 sekund...
BTW od dawna jestem przekonany że tzw. "programiści PHP" mają pewne problemy z logicznym myśleniem... I jakoś wszyscy mi udowadniają że mam rację.

Najkrótszy dowcip programisty świata? Programista php.

Ostatnio próbuje zastąpić takie cudaki tym: http://supervisord.org/configuration.html


https://l0calh0st.pl/obrazki/userbar.png

Offline

 

#11  2017-07-16 11:11:16

  lis6502 - Łowca lamerów

lis6502
Łowca lamerów
Skąd: Stalinogród
Zarejestrowany: 2008-12-04

Re: Wydłuzenie działania while'a oraz parametry php przy długich skryptach

Mistrzu, uświadom nas maluczkich, jako to z crona odpalić cokolwiek co 10 sekund...

Zaschedulować co minutę odpalanie skryptu, w którym zabudowany jest mechanizm odpalania innego skryptu co 10 sekund
coś w stylu

Kod:

#!/bin/bash
count=0; while [ $count -lt 5] ;do
        bash ~/właściwy_skrypt &
        sleep 10
        $((count++))
        done

pisane z czachy więc moze nie działać, ale ideę rozumiecie xD

Offline

 

#12  2017-07-16 15:46:22

  ethanak - Użytkownik

ethanak
Użytkownik
Skąd: Ungwenor
Zarejestrowany: 2010-07-19
Serwis

Re: Wydłuzenie działania while'a oraz parametry php przy długich skryptach

Rozumiemy. I nie popieramy.


Nim mechaniczne larum zagrasz mi, kanalio,
głosząc nadejście Javy - śmiertelnego wroga!
Zespół Adwokacki Dyskrecja

Offline

 

#13  2017-07-19 09:48:08

  jezoo - Dzięcioł

jezoo
Dzięcioł
Skąd: Z lasu
Zarejestrowany: 2005-09-02

Re: Wydłuzenie działania while'a oraz parametry php przy długich skryptach

@ethanak, myślisz, że jesteś guru programowania i wszystko co tobie się nie podoba to jest debilne i chore umysłowo. takich ludzi jak ty NIE TRAWIE! A jeżeli chodzi o crona to proszę bardzo:

Kod:

*/5     *       *       *       *       /home/.cronjobs/statistics.php all 2> /stat.log

tam niema żadnego skryptu który uruchamia kolejny skrypt. Wystarczy w pierwszej linijce napisać jaki parser ma się uruchomić, nota bene tak samo robi się w ... Bashu??? O matko jedyna, nie może być...

Druga sprawa, jesteś taki mądry a nie wiesz, że php wywodzi się z perla? jeżeli dla ciebie to są ludzie umysłowo chorzy to tak samo myślisz o osobach programujących właśnie w perlu, bashu sh itd. Bo to wszystko są języki skryptowe. "góró".

Po trzecie, jeżeli jesteś taki cwany to podaj mi przykład napisanego portalu w C++ lub w czystym C. czekam na odpowiedź.  Zadna Java (bo tutaj jest J2E, ani C# - .NET, ani też Python). tylko zwyczajne C++. Powtórnie napiszę, portalu anie strony.

Ostania rzecz, Allegro jest napisane w PHP, przez tych umysłowo chorych, autystycznych debili programistów PHP.

to na tyle.


LRU #480459

Offline

 

#14  2017-07-19 10:23:03

  Bodzio - Ojciec Założyciel

Bodzio
Ojciec Założyciel
Skąd: Gorlice
Zarejestrowany: 2004-04-17
Serwis

Re: Wydłuzenie działania while'a oraz parametry php przy długich skryptach

Panowie - bez wycieczek osobistych proszę


Debian jest lepszy niż wszystkie klony
Linux register users: #359018
http://www.freebsd.org/gifs/powerlogo.gif
Beskid Niski

Offline

 

#15  2017-07-19 14:09:14

  ethanak - Użytkownik

ethanak
Użytkownik
Skąd: Ungwenor
Zarejestrowany: 2010-07-19
Serwis

Re: Wydłuzenie działania while'a oraz parametry php przy długich skryptach

Bez wycieczek osobistych: podana linia odpala skrypt co 5 minut a nie co 10 sekund. Tyle o umiejętności czytania dokumentacji przez "programistów" php.
Osobiście nic do "programistów" php nie mam... Możemy się spotkać w barze, wypić piwo, pogadać o polityce albo o dupach... Tylko aby się nie brali za programowanie.
Aha, interpreter php jest napisany w C i dokładnie tyle ma wspólnego z interpreterem Perla.
A co do portali pisanych w innych językach niż php - youtube wystarczy?

Ostatnio edytowany przez ethanak (2017-07-19 14:11:49)


Nim mechaniczne larum zagrasz mi, kanalio,
głosząc nadejście Javy - śmiertelnego wroga!
Zespół Adwokacki Dyskrecja

Offline

 

#16  2017-07-19 18:44:02

  jezoo - Dzięcioł

jezoo
Dzięcioł
Skąd: Z lasu
Zarejestrowany: 2005-09-02

Re: Wydłuzenie działania while'a oraz parametry php przy długich skryptach

ethanak napisał(-a):

Tyle o umiejętności czytania dokumentacji przez "programistów" php

popatrz również na siebie..

jezoo napisał(-a):

(...)Zadna Java (bo tutaj jest J2E, ani C# - .NET, ani też Python).

Druga sprawa, jeżeli jesteś tak dobry w te klocki to dlaczego , jełopów PHPowców nie oświecisz sam. Ja tylko podałem przykład jak można uruchamiać skrypty php w cron'ie bez używania zewnętrznych skryptów. trzecia sprawa, aby jakikolwiek skrypt uruchamiał się co 10sekund (nawet napisany w pythonie, bashu itd.) to trzeba tutaj zrobić pewien myk. O tym, że w cron;ie najmniejsza jednostka czasu to 1min. to każdy o tym wie.

aby cron wykonywał skrypt co 10sek. to wystarczy taki wpis:

Kod:

* * * * * ( sleep 10 ; /home/.cronjobs/statistics.php all 2> /stat.log )

i na tym zakończę bo już nawet nie chcę pisać o poziomie twoich wpisów.

@Bodzio, ja poprostu musiałem to napisać, ponieważ już nerwowo nie wytrzymałem. Jeżeli ktoś nie ma pojęcia o czymś to niech lepiej się nie wypowiada.


LRU #480459

Offline

 

#17  2017-07-19 19:01:57

  ethanak - Użytkownik

ethanak
Użytkownik
Skąd: Ungwenor
Zarejestrowany: 2010-07-19
Serwis

Re: Wydłuzenie działania while'a oraz parametry php przy długich skryptach

Kurka wodna... ciekawe co ci pechapowcy jeszcze wymyślą... ten język naprawdę wypiera logikę z mózgu czy co?


Nim mechaniczne larum zagrasz mi, kanalio,
głosząc nadejście Javy - śmiertelnego wroga!
Zespół Adwokacki Dyskrecja

Offline

 

#18  2017-07-19 19:43:33

  yossarian - Szczawiożerca

yossarian
Szczawiożerca
Skąd: Shangri-La
Zarejestrowany: 2011-04-25

Re: Wydłuzenie działania while'a oraz parametry php przy długich skryptach

jezoo napisał(-a):

aby cron wykonywał skrypt co 10sek. to wystarczy taki wpis:

Kod:

* * * * * ( sleep 10 ; /home/.cronjobs/statistics.php all 2> /stat.log )

Ty tak na serio? :D

Offline

 

#19  2017-07-19 21:16:11

  arecki - Użytkownik

arecki
Użytkownik
Skąd: 44 Bronson Lane Hensonville
Zarejestrowany: 2016-03-03

Re: Wydłuzenie działania while'a oraz parametry php przy długich skryptach

Kierunek wydaje się być dobry, skorzystałbym z minutowego interwału crona przy czym rozbudowałbym to do kolejnych linijek z sleep 20, 30, 40, 50, 60.
Tak na pierwszy rzut oka nie widzę aby ta jedna linijka wystarczyła do nieskończonego cyklu 10sek., ale nie jestem programistą php więc może czegoś nie dostrzegam.

Offline

 

#20  2017-07-19 21:28:12

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/random
Zarejestrowany: 2008-01-07

Re: Wydłuzenie działania while'a oraz parametry php przy długich skryptach

Crona pchać do interwału 10 sekund jakimiś operacjami?

Nie wystarczy w bashu pętla

Kod:

while true; do sleep 10; polecenie; done;

Do odpalania skrypta z taką zawartością polecam daemontools.

Przykład odpalania małego robota XMPP napisanego w Perlu:

Kod:

cat /service/robot/run
#!/bin/sh

exec 2>&1
cd /var/lib/robot;
exec /usr/bin/setuidgid robot /usr/local/bin/robotr

Albo troszkę większych "robotów":

Kod:

cat /service/crond/run
#!/bin/sh

exec 2>&1

exec /usr/bin/setuidgid root /usr/sbin/crond -n

Kod:

#!/bin/sh

exec 2>&1
mkdir -p /var/run/mysqld;
chown mysql:mysql /var/run/mysqld;
chmod 1777 /var/run/mysqld;
exec /usr/bin/setuidgid mysql /usr/sbin/mysqld --defaults-file=/etc/mysql/my.cnf

Kod:

#!/bin/sh

exec 2>&1
NGINX="/usr/sbin/nginx"
test -d /var/run/nginx || mkdir -p /var/run/nginx;
chown nginx:nginx /var/run/nginx;
getcap $NGINX | grep cap_net_bind_service 2>&1>/dev/null || setcap cap_net_bind_service+ep $NGINX
exec /usr/bin/setuidgid nginx  $NGINX -c /etc/nginx/nginx.conf -g 'daemon off;'

Pozdro

Ostatnio edytowany przez Jacekalex (2017-07-19 21:29:50)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#21  2017-07-26 13:46:55

  jezoo - Dzięcioł

jezoo
Dzięcioł
Skąd: Z lasu
Zarejestrowany: 2005-09-02

Re: Wydłuzenie działania while'a oraz parametry php przy długich skryptach

yossarian napisał(-a):

jezoo napisał(-a):

aby cron wykonywał skrypt co 10sek. to wystarczy taki wpis:

Kod:

* * * * * ( sleep 10 ; /home/.cronjobs/statistics.php all 2> /stat.log )

Ty tak na serio? :D

Nie na serio, chciał w cronie to dałem to co chciał.

Jeżeli chodzi o takie rzeczy to ja robie skrypt w PHP i odpalam w tle  i sobie lata np:

Kod:

define("CLI", 1);
define("DEBUG", false);

use Cli\Worker;

$worker = new Worker();
$worker->enableDebug(true);

// Never ending story
while(true){
    $worker->checkWorker();
    if($worker->start){
        $worker->run();
    }
    sleep(15);
}

A w innych projektach używam funkcji proc_open  oraz proc_get_status:

Kod:

<?php

$descriptorspec = array(
    0 => array('pipe', 'r'),
    1 => array('pipe', 'w'),
    2 => array('pipe', 'w')
);
$proc = proc_open('yourcommand', $descriptorspec, $pipes);
$proc_details = proc_get_status($proc);
$pid = $proc_details['pid'];

echo $pid;

LRU #480459

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Nas ludzie lubią po prostu, a nie klikając w przyciski ;-)