🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.lang.php
6 messages
6 total messages Started by Arkadiusz Kajzerek Thu, 23 Aug 2001 13:40
2 godziny
#779
Author: Arkadiusz Kajzerek
Date: Thu, 23 Aug 2001 13:40
16 lines
1430 bytes
witam! mam dosyc niekonwencjonalne pytanie, ktore zadal mi i moim
kolegom kierownik projektu.

chodzi o to, ze musze uruchomic skrpyt, ktory odpala na bazie
oracle'owej akcje sql, ktora cos tam sobie robi (np. testuje wszystkie
wpisy pod jakims jedym warunkiem). taka akcja moze wykonywac sie
przez... hm, podobno nawet 2 godziny. jej wynik trzeba wyrzucic w
przegladarce.

skrypt pisany jest w php. jakies koncepcje jak sobie z tym poradzic? mi
do glowy przychodzi jedynie ustawic parametr timeout w php.ini na 7200
sekund. :)


pzdrwm,
arek
Re: 2 godziny
#780
Author: Leszek 'Leon' Krupiński
Date: Thu, 23 Aug 2001 12:51
14 lines
1518 bytes
Ship log, stardate: [-30]7138.1, Arkadiusz Kajzerek reports:
>  skrypt pisany jest w php. jakies koncepcje jak sobie z tym poradzic? mi
>  do glowy przychodzi jedynie ustawic parametr timeout w php.ini na 7200
>  sekund. :)

Nie będziesz miał timeoutu PHP, ale będzie timeout przeglądarki. Spróbuj
zrobić np. tak, że zapytanie odpalisz w tle a jego wynik zapiszesz do
jakiegoś pliku a strona będzie się odświeżała dopuki nie znajdzie tego
pliku...

-- 
         The joy of engineering is to find a straight line on a double
                             logarithmic diagram.
 http://www.leon.w-wa.pl/ | pl.comp.www.server-side FAQ: http://pcwss.faq.pl/
Re: 2 godziny
#782
Author: Leszek 'Leon' Krupiński
Date: Thu, 23 Aug 2001 13:20
10 lines
1411 bytes
Ship log, stardate: [-30]7138.2, Arkadiusz Kajzerek reports:
>  aha, co miales na mysli mowiac, ze mam sobie odpalic zapytanie "w tle"?

Nie wiem jak to jest z oraclem, ale z mysql'em i postgresqlem można
zrobić tak, że odpali się system('psql baza < plik_z_poleceniami &') i
będzie to działało w tle (przynajmniej powinno) na serwerze.

-- 
        It is a good thing we don't get all the government we pay for.
 http://www.leon.w-wa.pl/ | pl.comp.www.server-side FAQ: http://pcwss.faq.pl/
Re: 2 godziny
#783
Author: Marcin Witek
Date: Thu, 23 Aug 2001 13:28
21 lines
1982 bytes
> witam! mam dosyc niekonwencjonalne pytanie, ktore zadal mi i moim
> kolegom kierownik projektu.
>
> chodzi o to, ze musze uruchomic skrpyt, ktory odpala na bazie
> oracle'owej akcje sql, ktora cos tam sobie robi (np. testuje wszystkie
> wpisy pod jakims jedym warunkiem). taka akcja moze wykonywac sie
> przez... hm, podobno nawet 2 godziny. jej wynik trzeba wyrzucic w
> przegladarce.
>
> skrypt pisany jest w php. jakies koncepcje jak sobie z tym poradzic? mi
> do glowy przychodzi jedynie ustawic parametr timeout w php.ini na 7200
> sekund. :)
hm... kiedys mialem podobny problem z timeoutem przegladarki jak pisalem z
kumplem skrypty do testowania programow rownoleglych przez WWW. No i
robilismy cos takiego, ze przez czas trwania akcji skrypt co sekunde
wypluwal do przegladarki kawalek kodu - u nas byl to javascrip podmieniajacy
kolejne klatki obracajacego sie zegarka). Istotne tu jest zeby nie czekac
sekundy w aktywnej petli bo sie procek wykancza ;)), tylko uspic skrypt na
sekunde, wtedy go wogole nie zauwaza ;)

Wiciu
Re: 2 godziny
#781
Author: Arkadiusz Kajzerek
Date: Thu, 23 Aug 2001 14:13
33 lines
2367 bytes
Użytkownik "Leszek 'Leon' Krupiński" <d@z.pl> napisał w wiadomości
news:slrn9o9uto.i5g.d@ubik.melog.com.pl...
> Ship log, stardate: [-30]7138.1, Arkadiusz Kajzerek reports:
> >  skrypt pisany jest w php. jakies koncepcje jak sobie z tym
poradzic? mi
> >  do glowy przychodzi jedynie ustawic parametr timeout w php.ini na
7200
> >  sekund. :)
>
> Nie będziesz miał timeoutu PHP, ale będzie timeout przeglądarki.
Spróbuj
> zrobić np. tak, że zapytanie odpalisz w tle a jego wynik zapiszesz do
> jakiegoś pliku a strona będzie się odświeżała dopuki nie znajdzie tego
> pliku...
>
wiem, jest jeszcze timeout serwera...  poza tym niektore akcje wykonuja
sie  blyskawicznie, a  z tymi dluzszymi jest tak, ze wynik tej akcji
wyrzucany jest do czegos co sie zwie w oraclu "output".  jeszcze nie
jestem do konca pewien czy da sie zmusic baze do wrzucenia outputa do
pliku i czy przypadkiem nie jest tak, ze plik jest aktualizowany co
jakis czas (budowany po kawalku). trzeba by wtedy zabrac sie za jego
analize... uff... i jeszcze jedno na koniec. nie jestem pewien jeszcze
jednego - czy jesli przerwe dzialanie skryptu, to czy ta akcja dalej sie
bedzie wykonywac.

kumpel mi podpowiada, ze jesli skrypt przerwie dzialanie, to
automatycznie nie zrobi ora_commit i nie  zatwierdzi akcji sql. w
konsekwencji moze nie zostac wykonana.

aha, co miales na mysli mowiac, ze mam sobie odpalic zapytanie "w tle"?

arek
Re: 2 godziny
#784
Author: Piotr Pawlow
Date: Fri, 24 Aug 2001 19:24
23 lines
2171 bytes
"Arkadiusz Kajzerek" <kajzerek@sawan.com.pl> wrote:
> chodzi o to, ze musze uruchomic skrpyt, ktory odpala na bazie
> oracle'owej akcje sql, ktora cos tam sobie robi (np. testuje
> wszystkie wpisy pod jakims jedym warunkiem). taka akcja moze
> wykonywac sie przez... hm, podobno nawet 2 godziny. jej wynik trzeba
> wyrzucic w przegladarce. skrypt pisany jest w php. jakies koncepcje

Najlepiej postaw daemona, napisanego w perlu/c/javie (PHP raczej
odpada), ktorego zadaniem bedzie wykonywanie na bazie zapytan i
zapisywanie wynikow. Kazdemu zapytaniu mozesz przyporzadkowac
identyfikator i zrobic tak, zeby user podajac ten identyfikator mogl
sie dowiedziec czy zapytanie sie jeszcze wykonuje czy juz nie i jaki
jest wynik. Informujesz usera jaki ma identyfikator, i user moze
spokojnie zamknac przegladarke i wrocic po wynik za jakis czas. Musisz
dac mozliwosc anulowania zapytan i pamietac o podstawowych
zabezpieczeniach typu przerwanie zapytania po kilku minutach jesli
user nie potwierdzi ze dostal kod i ze go sobie zapisal, limit
maksymalnej ilosci wykonywanych na raz zapytan, czyszczenie starych
wynikow, autoryzacja uzytkownikow i logowanie dzialan itp.itd.
--
Pozdrawiam,
 Piotr Pawłow
 mailto:pp@siedziba.pl, homepage: http://pp.siedziba.pl
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads