|
| scheduleret service? Fra : David Konrad |
Dato : 11-03-03 20:25 |
|
Jeg ville høre om nogle kunne pege hen mod ressourcer der muliggør afvikling
af scripts på serveren på bestemte tidspunkter. Er det overhovedet muligt i
PHP? Hvis ikke kan jeg lave det i et andet sprog, der understøtter den
slags, men det kunne være rart at holde hele koden i PHP.
| |
Kim Schulz (11-03-2003)
| Kommentar Fra : Kim Schulz |
Dato : 11-03-03 20:29 |
|
On Tue, 11 Mar 2003 20:24:49 +0100
"David Konrad" <david_konrad@hotmail.com> wrote:
> Jeg ville høre om nogle kunne pege hen mod ressourcer der muliggør
> afvikling af scripts på serveren på bestemte tidspunkter. Er det
> overhovedet muligt i PHP? Hvis ikke kan jeg lave det i et andet sprog,
> der understøtter den slags, men det kunne være rart at holde hele
> koden i PHP.
det er der ikke nogen script sprog der kan klare, men du kan benytte et
cronjob hvis du har adgang til en rigtig server.
--
Kim Schulz - Freelance Development | Twenty two thousand days. Twenty
Email : kim @ schulz.dk | two thousand days. It's not a lot.
Tlf : 51904262 | It's all you've got. Twenty two
| |
David Konrad (11-03-2003)
| Kommentar Fra : David Konrad |
Dato : 11-03-03 20:35 |
|
"Kim Schulz" <kim@schulz.dk> skrev i en meddelelse
news:20030311202928.2a430f64.kim@schulz.dk...
>det er der ikke nogen script sprog der kan klare
Næh, men jeg håbede på der var lavet et funktionsbibliotek eller lignende
der gav denne mulighed. Jeg kan dårligt forestille mig jeg er den eneste der
har dette behov. Nuvel, jeg laver en asapiløsning.
>, men du kan benytte et
>cronjob hvis du har adgang til en rigtig server.
Hvad er en "rigtig server"? Jeg ved godt der findes uendelig mange andre
måder at gøre det på ellers, men det var jo lissom ikke det, jeg spurgte om
| |
Jonas Koch Bentzen (11-03-2003)
| Kommentar Fra : Jonas Koch Bentzen |
Dato : 11-03-03 21:24 |
|
Kim Schulz wrote:
> On Tue, 11 Mar 2003 20:24:49 +0100
> "David Konrad" <david_konrad@hotmail.com> wrote:
>> Jeg ville høre om nogle kunne pege hen mod ressourcer der muliggør
>> afvikling af scripts på serveren på bestemte tidspunkter. Er det
>> overhovedet muligt i PHP? Hvis ikke kan jeg lave det i et andet sprog,
>> der understøtter den slags, men det kunne være rart at holde hele
>> koden i PHP.
>
>
> det er der ikke nogen script sprog der kan klare
Vel heller ikke et kompileret sprog? Jo, selvfølgelig kan man køre noget som
en server og så sige "gør det og det, når klokken er det og det", men det
kan man jo også med PHP.
Så David: Funktionen ligger ikke i sproget. Man skal bruge cron på Linux og
.... hedder det Task Scheduler på Windows?
--
Jonas Koch Bentzen
http://findhim.com/
| |
Martin Mouritzen (11-03-2003)
| Kommentar Fra : Martin Mouritzen |
Dato : 11-03-03 22:10 |
|
On Tue, 11 Mar 2003 21:24:19 +0100, Jonas Koch Bentzen
<ingen.email@eksempel.dk> wrote:
>Så David: Funktionen ligger ikke i sproget. Man skal bruge cron på Linux og
>... hedder det Task Scheduler på Windows?
Så vidt jeg husker hedder det "at".
--
BellCom Internet ApS. Martin Mouritzen Phone: +45 39401717
Gersonsvej 25 Udvikler Fax: +45 39400144
DK-2900 Hellerup mm@bellcom.dk http://www.bellcom.dk
| |
Esben Skov Pedersen (11-03-2003)
| Kommentar Fra : Esben Skov Pedersen |
Dato : 11-03-03 23:00 |
|
Martin Mouritzen wrote:
> Så vidt jeg husker hedder det "at".
at udfører kommandon en gang hvorimod cron udfører den hver gang
tidsangivelsen passer.
| |
Peter Brodersen (12-03-2003)
| Kommentar Fra : Peter Brodersen |
Dato : 12-03-03 00:33 |
|
On Tue, 11 Mar 2003 23:00:28 +0100, Esben Skov Pedersen
<spam@geek.linux.dk> wrote:
>> Så vidt jeg husker hedder det "at".
>
>at udfører kommandon en gang hvorimod cron udfører den hver gang
>tidsangivelsen passer.
Såvidt, jeg kan se, er det Windows-udgaven, der henvises til (til
spørgsmålet om det hed Task Scheduler på Windows). Her kan følgende
switch blandt andet bruges til "at":
/every:date[,...] Runs the command on each specified day(s) of the
week or month. If date is omitted, the current day of the month is
assumed.
--
- Peter Brodersen
| |
David Konrad (12-03-2003)
| Kommentar Fra : David Konrad |
Dato : 12-03-03 09:58 |
|
"Jonas Koch Bentzen" <ingen.email@eksempel.dk> skrev i en meddelelse
news:b4lglg$ocn$1@sunsite.dk...
> > det er der ikke nogen script sprog der kan klare
>
> Vel heller ikke et kompileret sprog?
Joda.
>Jo, selvfølgelig kan man køre noget som
> en server og så sige "gør det og det, når klokken er det og det", men det
> kan man jo også med PHP.
Fint - fortæl mig hvordan.
> Så David: Funktionen ligger ikke i sproget. Man skal bruge cron på Linux
og
> ... hedder det Task Scheduler på Windows?
Jeg er ikke interesseret i at bruge andre programmer, specielle
platformsafhængige services mv - men PHP - det er derfor jeg spørger i denne
gruppe.
| |
Jonas Koch Bentzen (12-03-2003)
| Kommentar Fra : Jonas Koch Bentzen |
Dato : 12-03-03 10:26 |
|
David Konrad wrote:
> "Jonas Koch Bentzen" <ingen.email@eksempel.dk> skrev i en meddelelse
> news:b4lglg$ocn$1@sunsite.dk...
>
>> > det er der ikke nogen script sprog der kan klare
>>
>> Vel heller ikke et kompileret sprog?
>
> Joda.
Jovist, man kan lave programmet som et serverprogram, der hele tiden kører
og så gør noget, når klokken er noget bestemt - men hvorved skulle det
adskille sig fra scriptsprog? Jeg har svært ved at se, at det, at
programmet er kompileret på forhånd, skulle gøre nogen som helst forskel.
>>Jo, selvfølgelig kan man køre noget som
>> en server og så sige "gør det og det, når klokken er det og det", men det
>> kan man jo også med PHP.
>
> Fint - fortæl mig hvordan.
Hvorfor den arrogante holdning? Jeg forsøger at hjælpe dig her, og du
små-surmuler, fordi der ikke lige findes den magiske løsning, du gerne vil
have.
Du kan se, hvordan man laver serverprogrammer med PHP, her:
http://dk.php.net/sockets.
> Jeg er ikke interesseret i at bruge andre programmer, specielle
> platformsafhængige services mv - men PHP - det er derfor jeg spørger i
> denne gruppe.
Godt nok er cron et "andet program", men det er nu engang det, man bruger
til at starte programmer på bestemte tidspunkter i Linux og Unix. Også,
hvis programmet er skrevet i PHP.
Og hvorfor dælen køre ens eget program som serverprogram, der gør noget
bestemt på bestemte tidspunkter, når der i forvejen ligger et serverprogram
og håndterer den slags (cron)?
--
Jonas Koch Bentzen
http://findhim.com/
| |
David Konrad (12-03-2003)
| Kommentar Fra : David Konrad |
Dato : 12-03-03 11:02 |
|
"Jonas Koch Bentzen" <ingen.email@eksempel.dk> skrev i en meddelelse
news:b4mufa$80k$1@sunsite.dk...
> >> Vel heller ikke et kompileret sprog?
> >
> > Joda.
>
> Jovist, man kan lave programmet som et serverprogram,
PHP er og kan da ikke være andet end server-programmel...?
>der hele tiden kører
> og så gør noget, når klokken er noget bestemt -
I det her tilfælde er det en række forskellige ting der skal gøres på alle
mulige klokkeslet, der ikke er kendt på forhånd.
>men hvorved skulle det
> adskille sig fra scriptsprog?
Ja, det ved jeg ikke - men jeg får jo at vide at det ikke kan lade sig gøre
at lave scheduleringsrutiner i PHP.
>Jeg har svært ved at se, at det, at
> programmet er kompileret på forhånd, skulle gøre nogen som helst forskel.
Helt enig - men i de fleste "rigtige" programmeringssprog har man altså
nogle faciliteter til rådighed der ikke eksisterer i PHP.
> >>Jo, selvfølgelig kan man køre noget som
> >> en server og så sige "gør det og det, når klokken er det og det", men
det
> >> kan man jo også med PHP.
> >
> > Fint - fortæl mig hvordan.
>
> Hvorfor den arrogante holdning? Jeg forsøger at hjælpe dig her, og du
> små-surmuler, fordi der ikke lige findes den magiske løsning, du gerne vil
> have.
OK - det er bestemt ikke min mening at være arrogant, eller noget andet.
Undskyld hvis det er det indtryk du har fået.
> Du kan se, hvordan man laver serverprogrammer med PHP, her:
> http://dk.php.net/sockets.
Øh - ja, det er PHP's socketfacilitet der muliggør TCP/IP og, går jeg ud
fra, UDP.
> > Jeg er ikke interesseret i at bruge andre programmer, specielle
> > platformsafhængige services mv - men PHP - det er derfor jeg spørger i
> > denne gruppe.
>
> Godt nok er cron et "andet program", men det er nu engang det, man bruger
> til at starte programmer på bestemte tidspunkter i Linux og Unix. Også,
> hvis programmet er skrevet i PHP.
Ja, med mindre man altså har lavet et program der gør dette selv - f.eks kan
man i windows lave en integreret service der gør præcist hvad man har brug
for - hvad jeg har brug for er ikke et program der startes på et bestemt
tidspunkt - desværre, ellers havde det været nemt nok - men et program der
"lever" på serveren og gør forskellige ting på forskellige tidspunkter. Jeg
kan beskrive det således
B=bruger
B1 skal have opdateret/nyberegnet sine data kl 02, 04, 06, 08..24..etc
B2 skal have opdateret/nyberegnet sine data kl 04, 08, 12, 16..24..etc
B3 skal have opdateret/nyberegnet sine data kl 00, 48, 96..etc - op til en
uges interval...
osv
For at f.eks B1's beregninger bliver korrekte skal B2 (eventuelt - afhænger
af gruppering) have beregnet sine data, dvs B2's data skal være uptodate i
forhold til sin schedule, der ikke nødvendigvis er den samme som B1's.
Selvom B2 forudsættes at være uptodate i forhold til B1, kan dennes cyklus
sagtens være f.eks 48 timer i forhold til B1's ½ time [for at komme med et
eksempel].
Indtil videre cacher jeg nogle ting, og laver et check hver gang der
beregnes på om alle forudsætninger er til stede, men da dette er *afhængig*
af brugerinteraktion er det kun næstbedste løsning - også selvom den virker
upåklageligt. Jeg ser dog for mig et scenarie, hvor en beregning forudsætter
af 100 brugere har fået deres beregninger foretaget, og hvor de ikke har
været logget ind i nogle dage - dette vil naturligvis give en lang svartid
for den uheldige bruger der tvinger de andre's data til at blive opdateret.
Det perfekte ville være, hvis jeg kunne køre det brugeraktiverede check via
en scheduleret service.
> Og hvorfor dælen køre ens eget program som serverprogram, der gør noget
> bestemt på bestemte tidspunkter,
Det er heller ikke tilfældet.
>når der i forvejen ligger et serverprogram
> og håndterer den slags (cron)?
Desværre kan jeg ikke sætte min lid til, eller arbejde ud fra, at serveren
er en linux. En ren PHP-løsning ville være bedst, men det er desværre ikke
muligt, kan jeg forstå.
| |
Jonas Koch Bentzen (12-03-2003)
| Kommentar Fra : Jonas Koch Bentzen |
Dato : 12-03-03 11:57 |
|
David Konrad wrote:
> "Jonas Koch Bentzen" <ingen.email@eksempel.dk> skrev i en meddelelse
> news:b4mufa$80k$1@sunsite.dk...
>
>> >> Vel heller ikke et kompileret sprog?
>> >
>> > Joda.
>>
>> Jovist, man kan lave programmet som et serverprogram,
>
> PHP er og kan da ikke være andet end server-programmel...?
Vi misforstår vist hinanden. Du taler om HTTP (at PHP kører som en
integreret del af en webserver, f.eks. Apache). Jeg taler om, at PHP kan
køre som et almindeligt serverprogram ("dæmon" i Linux-/Unix-sprog,
"service" i Windows-sprog), der kører konstant (som serverprogrammer jo
gør), tjekker klokkeslættet og gør noget bestemt, når klokken er noget
bestemt.
> I det her tilfælde er det en række forskellige ting der skal gøres på alle
> mulige klokkeslet, der ikke er kendt på forhånd.
Okay. Det lyder så som om, du skal lave et serverprogram, f.eks. i PHP. På
de fleste webhoteller er det dog ikke muligt at køre et sådant program.
> Helt enig - men i de fleste "rigtige" programmeringssprog har man altså
> nogle faciliteter til rådighed der ikke eksisterer i PHP.
PHP er et "rigtigt" programmeringssprog. Det er et fortolket sprog, ja, men
det gør ikke den store forskel. De fleste fortolkede sprog kan (via mindre
eller mindre obskure programmer) faktisk godt kompileres - ligesom der
vistnok også findes en slags runtime-fortolkere til visse sprog, der ellers
normalt er kompilerede. Derfor bør man ikke foretage en al for skarp
skelnen mellem fortolkede og ikke-fortolkede sprog.
> Øh - ja, det er PHP's socketfacilitet der muliggør TCP/IP og, går jeg ud
> fra, UDP.
Du har ret, det er selvfølgelig ikke nødvendigt at lytte på en port for at
få et program til at køre som en server.
Jeg går ud fra, du skal lave noget a la (stærkt forenklet):
while (TRUE) {
if (klokkeslaet() == "noget bestemt") goerNoget();
}
> Ja, med mindre man altså har lavet et program der gør dette selv - f.eks
> kan man i windows lave en integreret service der gør præcist hvad man har
> brug for - hvad jeg har brug for er ikke et program der startes på et
> bestemt tidspunkt - desværre, ellers havde det været nemt nok - men et
> program der "lever" på serveren og gør forskellige ting på forskellige
> tidspunkter.
Okay - det er så (hvis jeg forstår din beskrivelse rigtigt) en
"dæmon"/"service" (og kan sikkert også kaldes et serverprogram), og den
slags kan man godt lave med PHP.
> Desværre kan jeg ikke sætte min lid til, eller arbejde ud fra, at serveren
> er en linux. En ren PHP-løsning ville være bedst, men det er desværre ikke
> muligt, kan jeg forstå.
Jo, det vil jeg mene. Nok bare ikke på et webhotel.
--
Jonas Koch Bentzen
http://findhim.com/
| |
David Konrad (12-03-2003)
| Kommentar Fra : David Konrad |
Dato : 12-03-03 13:32 |
|
"Jonas Koch Bentzen" <ingen.email@eksempel.dk> skrev i en meddelelse
news:b4n3pc$ihd$1@sunsite.dk...
> >> Jovist, man kan lave programmet som et serverprogram,
> >
> > PHP er og kan da ikke være andet end server-programmel...?
>
> Vi misforstår vist hinanden. Du taler om HTTP (at PHP kører som en
> integreret del af en webserver, f.eks. Apache). Jeg taler om, at PHP kan
> køre som et almindeligt serverprogram ("dæmon" i Linux-/Unix-sprog,
> "service" i Windows-sprog), der kører konstant (som serverprogrammer jo
> gør), tjekker klokkeslættet og gør noget bestemt, når klokken er noget
> bestemt.
Jeps - det er lige præcis det, jeg synes kunne være interessant i
forbindelse med mit projekt.
> > I det her tilfælde er det en række forskellige ting der skal gøres på
alle
> > mulige klokkeslet, der ikke er kendt på forhånd.
>
> Okay. Det lyder så som om, du skal lave et serverprogram, f.eks. i PHP. På
> de fleste webhoteller er det dog ikke muligt at køre et sådant program.
Det **skal** de så bare, ellers kan de vinke farvel til mig som kunde
alternativt kunne man jo sætte sin egen server op - det er dog en ringe
løsning, da det kræver ekstraordinært meget vedligeholdelsesarbejde mv -
oveni den almindelige vedligeholdelse.
> > Helt enig - men i de fleste "rigtige" programmeringssprog har man altså
> > nogle faciliteter til rådighed der ikke eksisterer i PHP.
>
> PHP er et "rigtigt" programmeringssprog.
PHP er et scriptsprog. Jeg skriver i øvrigt ikke, at PHP er dårligt -
tværtimod mener jeg PHP er virkelig stærkt, og som desuden har en ekstrem
høj indlæringskurve, dvs det er både nemt og effektivt.
>Det er et fortolket sprog, ja, men
> det gør ikke den store forskel. De fleste fortolkede sprog kan (via mindre
> eller mindre obskure programmer) faktisk godt kompileres - ligesom der
> vistnok også findes en slags runtime-fortolkere til visse sprog, der
ellers
> normalt er kompilerede. Derfor bør man ikke foretage en al for skarp
> skelnen mellem fortolkede og ikke-fortolkede sprog.
Og den skelnen er du såmænd også ene om, så vidt jeg kan bedømme
> > Øh - ja, det er PHP's socketfacilitet der muliggør TCP/IP og, går jeg ud
> > fra, UDP.
>
> Du har ret, det er selvfølgelig ikke nødvendigt at lytte på en port for at
> få et program til at køre som en server.
Nej.
> Jeg går ud fra, du skal lave noget a la (stærkt forenklet):
>
> while (TRUE) {
> if (klokkeslaet() == "noget bestemt") goerNoget();
> }
Tjo. Basalt set.
> > Ja, med mindre man altså har lavet et program der gør dette selv - f.eks
> > kan man i windows lave en integreret service der gør præcist hvad man
har
> > brug for - hvad jeg har brug for er ikke et program der startes på et
> > bestemt tidspunkt - desværre, ellers havde det været nemt nok - men et
> > program der "lever" på serveren og gør forskellige ting på forskellige
> > tidspunkter.
>
> Okay - det er så (hvis jeg forstår din beskrivelse rigtigt) en
> "dæmon"/"service" (og kan sikkert også kaldes et serverprogram), og den
> slags kan man godt lave med PHP.
Hurra! Hvordan gør jeg så det? Mit problem er sådan set, primært, at jeg
ikke aner **om** man kan få et sådan PHP-script til at køre, og **hvordan**
man evt får det til at køre, uafhængigt af brugerinteraktion og den øvrige
trafik. Det kan jo ikke aktiveres fra en html/php-side, eksempelvis.
> > Desværre kan jeg ikke sætte min lid til, eller arbejde ud fra, at
serveren
> > er en linux. En ren PHP-løsning ville være bedst, men det er desværre
ikke
> > muligt, kan jeg forstå.
>
> Jo, det vil jeg mene. Nok bare ikke på et webhotel.
Lad os sige, at jeg har scriptet calc_schedule.php - hvordan skulle jeg
kunne få det til at køre på serveren, uafhængigt af hvad der ellers foregår
omkring min site?
| |
Jonas Koch Bentzen (12-03-2003)
| Kommentar Fra : Jonas Koch Bentzen |
Dato : 12-03-03 14:33 |
|
David Konrad wrote:
>> Okay. Det lyder så som om, du skal lave et serverprogram, f.eks. i PHP.
>> På de fleste webhoteller er det dog ikke muligt at køre et sådant
>> program.
>
> Det **skal** de så bare, ellers kan de vinke farvel til mig som kunde
Tro mig, de vil være glade for at vinke farvel til dig som kunde, hvis du
kører resursekrævende programmer, har 100.000 samtidige brugere (som du
vist nævnte et sted) og kun betaler eksempelvis 100 kr. om måneden.
> alternativt kunne man jo sætte sin egen server op - det er dog en ringe
> løsning, da det kræver ekstraordinært meget vedligeholdelsesarbejde mv -
> oveni den almindelige vedligeholdelse.
Ikke desto mindre lyder det som den rigtige løsning.
Der findes serverløsninger, hvor man stort set ikke passer noget selv. Spørg
i dk.edb.internet.udbydere.webhotel.
>> PHP er et "rigtigt" programmeringssprog.
>
> PHP er et scriptsprog.
Ja, og scriptsprog er en delmængde af programmeringssprog.
>>Det er et fortolket sprog, ja, men
>> det gør ikke den store forskel. De fleste fortolkede sprog kan (via
>> mindre eller mindre obskure programmer) faktisk godt kompileres - ligesom
>> der vistnok også findes en slags runtime-fortolkere til visse sprog, der
> ellers
>> normalt er kompilerede. Derfor bør man ikke foretage en al for skarp
>> skelnen mellem fortolkede og ikke-fortolkede sprog.
>
> Og den skelnen er du såmænd også ene om, så vidt jeg kan bedømme
Det lyder for mig som om, du siger: PHP er et scriptsprog, og derfor er det
ikke et "rigtigt" programmeringssprog. Det er et gammelkendt argument - og
det er et *dårligt* argument.
> Hurra! Hvordan gør jeg så det? Mit problem er sådan set, primært, at jeg
> ikke aner **om** man kan få et sådan PHP-script til at køre, og
> **hvordan** man evt får det til at køre, uafhængigt af brugerinteraktion
> og den øvrige trafik. Det kan jo ikke aktiveres fra en html/php-side,
> eksempelvis.
Du skal køre det som kommandolinjeprogram. Søg på "cli" (command line
interface) på php.net.
--
Jonas Koch Bentzen
http://findhim.com/
| |
David Konrad (12-03-2003)
| Kommentar Fra : David Konrad |
Dato : 12-03-03 15:01 |
|
"Jonas Koch Bentzen" <ingen.email@eksempel.dk> skrev i en meddelelse
news:b4ncv3$ate$1@sunsite.dk...
> > Det **skal** de så bare, ellers kan de vinke farvel til mig som kunde
>
> Tro mig, de vil være glade for at vinke farvel til dig som kunde, hvis du
> kører resursekrævende programmer, har 100.000 samtidige brugere (som du
> vist nævnte et sted) og kun betaler eksempelvis 100 kr. om måneden.
Selvfølgelig. Disse 100.000 nævner jeg btw jo også som teoretiske
> > alternativt kunne man jo sætte sin egen server op - det er dog en ringe
> > løsning, da det kræver ekstraordinært meget vedligeholdelsesarbejde mv -
> > oveni den almindelige vedligeholdelse.
>
> Ikke desto mindre lyder det som den rigtige løsning.
>
> Der findes serverløsninger, hvor man stort set ikke passer noget selv.
Spørg
> i dk.edb.internet.udbydere.webhotel.
Ja, men jeg frygter blot jeg ender med at spilde en masse tid på
sikkerhedsforanstaltninger, nedbrud mv. Et webhotel vil jeg næppe kunne
"konkurrere" med, naturligvis afhængig af udbyderen, hvis man ser på
kvalitet, oppetid, hardware mv...
> >> PHP er et "rigtigt" programmeringssprog.
> >
> > PHP er et scriptsprog.
>
> Ja, og scriptsprog er en delmængde af programmeringssprog.
Åhja. Ikke mere herfra om det, udover at jeg kan minde om, at jeg satte
"rigtige" i gåsdeøjne for to indlæg siden, og at de færreste vel er i tvivl
om hvad jeg mener med det.
> >>Det er et fortolket sprog, ja, men
> >> det gør ikke den store forskel. De fleste fortolkede sprog kan (via
> >> mindre eller mindre obskure programmer) faktisk godt kompileres -
ligesom
> >> der vistnok også findes en slags runtime-fortolkere til visse sprog,
der
> > ellers
> >> normalt er kompilerede. Derfor bør man ikke foretage en al for skarp
> >> skelnen mellem fortolkede og ikke-fortolkede sprog.
> >
> > Og den skelnen er du såmænd også ene om, så vidt jeg kan bedømme
>
> Det lyder for mig som om, du siger: PHP er et scriptsprog, og derfor er
det
> ikke et "rigtigt" programmeringssprog. Det er et gammelkendt argument - og
> det er et *dårligt* argument.
Men ikke et argument jeg har fremført, vel? Vær venlig at hæfte dig ved det,
og ikke hvad du forestiller dig jeg mener.
> > Hurra! Hvordan gør jeg så det? Mit problem er sådan set, primært, at jeg
> > ikke aner **om** man kan få et sådan PHP-script til at køre, og
> > **hvordan** man evt får det til at køre, uafhængigt af brugerinteraktion
> > og den øvrige trafik. Det kan jo ikke aktiveres fra en html/php-side,
> > eksempelvis.
>
> Du skal køre det som kommandolinjeprogram. Søg på "cli" (command line
> interface) på php.net.
Tak. Det var sådan set alt jeg ville vide.
| |
Jonas Koch Bentzen (12-03-2003)
| Kommentar Fra : Jonas Koch Bentzen |
Dato : 12-03-03 15:24 |
|
David Konrad wrote:
>
> Åhja. Ikke mere herfra om det, udover at jeg kan minde om, at jeg satte
> "rigtige" i gåsdeøjne for to indlæg siden, og at de færreste vel er i
> tvivl om hvad jeg mener med det.
Når du taler om PHP kontra "rigtige" programmeringssprog, hvordan kan jeg så
forstå det anderledes end at du ikke mener, PHP er et rigtigt
programmeringssprog? Gåseøjnene formilder udtrykket, men ændrer ellers ikke
en tøddel.
--
Jonas Koch Bentzen
http://findhim.com/
| |
David Konrad (12-03-2003)
| Kommentar Fra : David Konrad |
Dato : 12-03-03 15:36 |
|
"Jonas Koch Bentzen" <ingen.email@eksempel.dk> skrev i en meddelelse
news:b4nftc$5m3$1@sunsite.dk...
> David Konrad wrote:
> >
> > Åhja. Ikke mere herfra om det, udover at jeg kan minde om, at jeg satte
> > "rigtige" i gåsdeøjne for to indlæg siden, og at de færreste vel er i
> > tvivl om hvad jeg mener med det.
>
> Når du taler om PHP kontra "rigtige" programmeringssprog, hvordan kan jeg
så
> forstå det anderledes end at du ikke mener, PHP er et rigtigt
> programmeringssprog? Gåseøjnene formilder udtrykket, men ændrer ellers
ikke
> en tøddel.
Du kunne jo lissom' prøve at opfatte gåseøjnene akkurat som du ville opfatte
dem i enhver anden tænkelig forbindelse, og forsøge at glemme disse bitre,
ophedede diskussioner som du åbenbart har ført med folk omkring dette emne
gennem tiderne
Hvad med en "rigtig" farve, "rigtig" ost, "rigtig" pølse, en "rigtig" server
etc...Summa summarum : havde jeg ikke skrevet "rigtig" i gåseøjne havde jeg
forstået dit opstød, men jeg kan da kun opfatte det som om, at du har været
lige lovlig hurtig på tasterne, sikkert grundet nogle bitre diskussuioner du
har ført førhen - en diskussion jeg vel at mærke ikke gider at deltage i, da
den er aldeles formålsløs...
| |
Martin Mouritzen (12-03-2003)
| Kommentar Fra : Martin Mouritzen |
Dato : 12-03-03 12:53 |
|
On Wed, 12 Mar 2003 11:02:25 +0100, "David Konrad"
<david_konrad@hotmail.com> wrote:
>Helt enig - men i de fleste "rigtige" programmeringssprog har man altså
>nogle faciliteter til rådighed der ikke eksisterer i PHP.
Altså stop nu lige.
Har du overhovedet nogensinde programmeret (i andet) - Det virker ikke
ligefrem sådan? (Ja, jeg er ked af at jeg lige røg et niveau ned, men
du irriterer mig).
Der findes ikke det du efterspørger i andre programmeringssprog
heller.
Det man kan gøre er:
while(true) {
checkSchedule(); // Check om der skal laves noget netop nu.
sleep(1); // giv andre tråde tid.
}
Og det er sådan ca. også sådan alle andre programmer, der gør noget på
et bestemt tidspunkt fungerer.
--
BellCom Internet ApS. Martin Mouritzen Phone: +45 39401717
Gersonsvej 25 Udvikler Fax: +45 39400144
DK-2900 Hellerup mm@bellcom.dk http://www.bellcom.dk
| |
David Konrad (12-03-2003)
| Kommentar Fra : David Konrad |
Dato : 12-03-03 13:20 |
|
"Martin Mouritzen" <mm@bellcom.dk> skrev i en meddelelse
news:0i7u6v09heqd4j4kceldo0vigeejgsretd@4ax.com...
> On Wed, 12 Mar 2003 11:02:25 +0100, "David Konrad"
> <david_konrad@hotmail.com> wrote:
>
> >Helt enig - men i de fleste "rigtige" programmeringssprog har man altså
> >nogle faciliteter til rådighed der ikke eksisterer i PHP.
>
> Altså stop nu lige.
> Har du overhovedet nogensinde programmeret (i andet) - Det virker ikke
> ligefrem sådan? (Ja, jeg er ked af at jeg lige røg et niveau ned, men
> du irriterer mig).
C++, Delphi, J2EE, java samt andre scriptsprog - masser af års erfaring,
hvor jeg er blevet lønnet for at programmere. PHP bruger jeg blot i dette
hobby-projekt.
> Der findes ikke det du efterspørger i andre programmeringssprog
> heller.
Hvilket er direkte Forkert - i delphi eller c++ kunne jeg snildt lave en
service der hvert x'te sekund lavede en søgning på bruger og opdateringslog,
og derefter satte de beregnings-scripts i gang der mangler, i forhold til
det aktuelle tidspunkt.
> Det man kan gøre er:
>
> while(true) {
> checkSchedule(); // Check om der skal laves noget netop nu.
> sleep(1); // giv andre tråde tid.
>}
Hvad blev der af synkroniserede treads?
> Og det er sådan ca. også sådan alle andre programmer, der gør noget på
> et bestemt tidspunkt fungerer.
Den opfattelse deler jeg ikke - det lyder temmelig krejlet og
ressourceforslugende. I windows ville man typisk hooke sig ind på de
services der allerede eksisterer, beregnet til formålet, ved hjælp af
FindFirstChangeNotification -> WaitforSingleObject...At holde en tråd evigt
kørende med "sleep" er simpelthen amatøragtigt.
| |
Peter Brodersen (12-03-2003)
| Kommentar Fra : Peter Brodersen |
Dato : 12-03-03 21:32 |
|
On Wed, 12 Mar 2003 13:19:36 +0100, "David Konrad"
<david_konrad@hotmail.com> wrote:
>Hvad blev der af synkroniserede treads?
http://www.php.net/manual/en/ref.pcntl.php kan om ikke andet give én
et skub i den retning, selvom man sikkert vil finde mere erfaring
indenfor traditionelle sprog.
--
- Peter Brodersen
| |
Larz (12-03-2003)
| Kommentar Fra : Larz |
Dato : 12-03-03 03:32 |
|
Kim Schulz <kim@schulz.dk> wrote in
news:20030311202928.2a430f64.kim@schulz.dk:
> On Tue, 11 Mar 2003 20:24:49 +0100
> "David Konrad" <david_konrad@hotmail.com> wrote:
>> Jeg ville høre om nogle kunne pege hen mod ressourcer der muliggør
>> afvikling af scripts på serveren på bestemte tidspunkter. Er det
>> overhovedet muligt i PHP? Hvis ikke kan jeg lave det i et andet sprog,
>> der understøtter den slags, men det kunne være rart at holde hele
>> koden i PHP.
>
>
> det er der ikke nogen script sprog der kan klare
Joda, det kan alle de scriptsprog jeg kender! I mange af dem skal du dog
skrive en "scheduler" selv... Men det er jo i princippet ikke andet end et
uendeligt loop der checker tiden og de jobs det skal køre.
--
-
Lars
http://coder.dk/sohofaq.php - Uofficiel WOL SOHO 77 FAQ
To mail me remove your pants.
| |
David Konrad (12-03-2003)
| Kommentar Fra : David Konrad |
Dato : 12-03-03 10:03 |
|
"Larz" <lp@your-pants-coder.dk> skrev i en meddelelse
news:Xns933C23F0147E0godlarz@62.243.74.162...
> > det er der ikke nogen script sprog der kan klare
>
> Joda, det kan alle de scriptsprog jeg kender! I mange af dem skal du dog
> skrive en "scheduler" selv... Men det er jo i princippet ikke andet end et
> uendeligt loop der checker tiden og de jobs det skal køre.
Se, det lyder interessant. Kan du pege henimod nogle projekter?
| |
Ulrik Nielsen (12-03-2003)
| Kommentar Fra : Ulrik Nielsen |
Dato : 12-03-03 10:10 |
|
David Konrad wrote:
>>
>>Joda, det kan alle de scriptsprog jeg kender! I mange af dem skal du dog
>>skrive en "scheduler" selv... Men det er jo i princippet ikke andet end et
>>uendeligt loop der checker tiden og de jobs det skal køre.
>
>
> Se, det lyder interessant. Kan du pege henimod nogle projekter?
ja det virker sikkert i fem minutter indtil en emzy sysadm zapper det
script er ligger og looper på hans server...
hvis det er et højtrafik site det skal bruges på, kan du jo bare lave et
check hvergang en bruger går på sitet.
der er jo så nok perioder hvor der ikke bliver checket så tit som i
andre perioder....
--
>> ulrik - ulrik(@)lazy.dk
excuse of the day : The POP server is out of Coke
from bofh : http://www.cs.wisc.edu/~ballard/bofh/
| |
David Konrad (12-03-2003)
| Kommentar Fra : David Konrad |
Dato : 12-03-03 10:18 |
|
"Ulrik Nielsen" <ulrik@lazy.dk> skrev i en meddelelse
news:5QCba.124016$Hl6.11069952@news010.worldonline.dk...
> > Se, det lyder interessant. Kan du pege henimod nogle projekter?
>
> ja det virker sikkert i fem minutter indtil en emzy sysadm zapper det
> script er ligger og looper på hans server...
Jeps - mit håb var derfor et eksisterende framework, der håndterede den mest
almindelige logik.
> hvis det er et højtrafik site det skal bruges på, kan du jo bare lave et
> check hvergang en bruger går på sitet.
> der er jo så nok perioder hvor der ikke bliver checket så tit som i
> andre perioder....
Ja - det er lige nøjagtig den fremgangsmåde jeg pr har valgt - jeg aner bare
ikke hvordan det vil virke, hvis der - helt teoretisk set - skulle være
f.eks 100.000 brugere koblet op på samme tid. Ydermere har "løsningen" den
hage, at nogle beregninger faktisk bør foretages, også selvom brugeren ikke
har været logget ind og dermed ikke har fået foretaget de seneste
beregninger. At lave et globalt check hver gang en bruger accesser én af
siderne er det rent vanvid - helt uladsiggørligt.
Men jeg overlever nok med den nuværende løsning. Har allerede lavet en logik
der cacher mellemberegninger og generede data - faktisk er det lige før jeg
tror, at det når alt kommer til alt vil virke mere optimeret set udefra, som
bruger, da svartiderne gennemsnitligt bliver mindre.
| |
Ulrik Nielsen (12-03-2003)
| Kommentar Fra : Ulrik Nielsen |
Dato : 12-03-03 10:29 |
|
David Konrad wrote:
> Ja - det er lige nøjagtig den fremgangsmåde jeg pr har valgt - jeg aner bare
> ikke hvordan det vil virke, hvis der - helt teoretisk set - skulle være
> f.eks 100.000 brugere koblet op på samme tid. Ydermere har "løsningen" den
hvis du har "for mange brugere" kan du lave et tids check er der gået 5
min siden jeg kørte dette kæmpe script sidst eller....
det skulle hjælpe en smugle på preformance. ;)
--
>> ulrik - ulrik(@)lazy.dk
excuse of the day : The POP server is out of Coke
from bofh : http://www.cs.wisc.edu/~ballard/bofh/
| |
Kim Schulz (11-03-2003)
| Kommentar Fra : Kim Schulz |
Dato : 11-03-03 20:36 |
|
[snip]
> Hvad er en "rigtig server"? Jeg ved godt der findes uendelig mange
> andre måder at gøre det på ellers, men det var jo lissom ikke det, jeg
> spurgte om
sorry. jeg mener en "ikke-hjemme-pc". de fleste unix/linux versioner har
cron med som standard (eller AtD), og jeg ved at der findes noget
lignende til NT/2000.
--
Kim Schulz - Freelance Development | A lack of leadership is no
Email : kim @ schulz.dk | substitute for inaction.
Tlf : 51904262 |
| |
Esben Skov Pedersen (11-03-2003)
| Kommentar Fra : Esben Skov Pedersen |
Dato : 11-03-03 23:03 |
|
David Konrad wrote:
> Jeg ville høre om nogle kunne pege hen mod ressourcer der muliggør afvikling
> af scripts på serveren på bestemte tidspunkter.
hvis du har en shell på serveren bringer crontab -e din crontab frem.
skriv man 5 crontab for en nærmere beskrivelse.
> Er det overhovedet muligt i
> PHP? Hvis ikke kan jeg lave det i et andet sprog, der understøtter den
> slags, men det kunne være rart at holde hele koden i PHP.
Hvis php-cgi er installeret på serveren kan du skrive php4 mitscript. En
anden mulighed er at bruge textbrowseren lynx med fx. lynx -source
http://server/minside.php > /dev/null.
/Esben
| |
Jonas Koch Bentzen (11-03-2003)
| Kommentar Fra : Jonas Koch Bentzen |
Dato : 11-03-03 23:52 |
|
Esben Skov Pedersen wrote:
>
> Hvis php-cgi er installeret på serveren kan du skrive php4 mitscript.
Det er vist kun i enkelte distributioner, den hedder det.
Som standard installeres PHP-fortolkeren som "php" i /usr/local/bin (på
Linux/Unix, i hvert fald).
Et kommandolinjeprogram køres som
php -q program.php
i ældre versioner af PHP, eller som
php -f program.php
i nyere versioner.
Og skulle vi så ikke afskaffe brugeren af ordet "CGI", når vi omtaler
kommandolinjeudgaven af PHP-fortolkeren? :) Trods alt bevæger PHP sig mere
og mere over i en retning, hvor det bruges til almindelige
kommandolinjeopgaver eller programmer med grafisk brugerflade (Gtk+).
--
Jonas Koch Bentzen
| |
David Konrad (12-03-2003)
| Kommentar Fra : David Konrad |
Dato : 12-03-03 10:06 |
|
"Esben Skov Pedersen" <spam@geek.linux.dk> skrev i en meddelelse
news:2232k-up6.ln1@goliath.geek.linux.dk...
> David Konrad wrote:
> > Jeg ville høre om nogle kunne pege hen mod ressourcer der muliggør
afvikling
> > af scripts på serveren på bestemte tidspunkter.
>
> hvis du har en shell på serveren bringer crontab -e din crontab frem.
> skriv man 5 crontab for en nærmere beskrivelse.
Jeg har ingen garanti for at min kode kommer til at køre på linux, eller
windows for den sags skyld, ligesom jeg ikke har garanti for, at jeg kan
køre cron-jobs.
> > Er det overhovedet muligt i
> > PHP? Hvis ikke kan jeg lave det i et andet sprog, der understøtter den
> > slags, men det kunne være rart at holde hele koden i PHP.
>
> Hvis php-cgi er installeret på serveren kan du skrive php4 mitscript. En
> anden mulighed er at bruge textbrowseren lynx med fx. lynx -source
> http://server/minside.php > /dev/null.
Mange her synes at glemme, at de fleste har deres site anbragt på et
webhotel, og ikke kører det fra deres egen krejlerserver hjemme fra
soveværelset ))
| |
Jonas Koch Bentzen (12-03-2003)
| Kommentar Fra : Jonas Koch Bentzen |
Dato : 12-03-03 10:19 |
|
David Konrad wrote:
>
> Mange her synes at glemme, at de fleste har deres site anbragt på et
> webhotel, og ikke kører det fra deres egen krejlerserver hjemme fra
> soveværelset ))
Du synes at glemme, at der altså ikke er noget alternativ til en server med
cron/at :) Jo, du kan selvfølgelig lave dit program som et serverprogram,
der konstant tjekker tiden og gør noget, når klokken er det og det - men
det får du alligevel ikke lov til på et webhotel.
--
Jonas Koch Bentzen
http://findhim.com/
| |
Esben Skov Pedersen (12-03-2003)
| Kommentar Fra : Esben Skov Pedersen |
Dato : 12-03-03 16:56 |
|
David Konrad wrote:
> Jeg har ingen garanti for at min kode kommer til at køre på linux, eller
> windows for den sags skyld, ligesom jeg ikke har garanti for, at jeg kan
> køre cron-jobs.
Er der ikke noget der hedder service blandt webhoteller?
/Esben
| |
Kim Schulz (11-03-2003)
| Kommentar Fra : Kim Schulz |
Dato : 11-03-03 23:08 |
|
On Tue, 11 Mar 2003 23:00:28 +0100
Esben Skov Pedersen <spam@geek.linux.dk> wrote:
> Martin Mouritzen wrote:
>
> > Så vidt jeg husker hedder det "at".
>
> at udfører kommandon en gang hvorimod cron udfører den hver gang
> tidsangivelsen passer.
sæt dit at script til at sætte en nye "at" tid til now+24hours
--
Kim Schulz - Freelance Development | Something's rotten in the state of
Email : kim @ schulz.dk | Denmark. -- Shakespeare
Tlf : 51904262 |
| |
|
|