Perlscript als Dienst (Service) unter WIN XP
Perlscript als Dienst (Service) unter WIN XP
am 23.11.2006 10:23:19 von Timothy Kesten
Hi Folks,
ich beabsichtige, ein Perlscript als Dienst unter WIN XP Prof. zu
installieren. Anleitungen/Literatur dazu habe ich. Sollte also nicht das
Problem darstellen. Was mich aber interessiert, bevor ich mich weiter in
die Materie einarbeite: Wieviel Ressourcen frisst so ein Perlscript als
Dienst. Unter Linux (dort eben als Equivalent (Daemon) ist das ja kein
Problem - schon praktiziert) aber wie sieht das unter WIN aus? Hat jemand
hier damit schon Erfahrungen.
Sollte dies die falsche Gruppe für diese Frage sein - bitte "schickt" mich
in dann in die Richtige - und verzeiht mir ;-)
Danke
Timothy
Re: Perlscript als Dienst (Service) unter WIN XP
am 23.11.2006 15:16:45 von Ingo Menger
Timothy Kesten schrieb:
> Hi Folks,
>
> ich beabsichtige, ein Perlscript als Dienst unter WIN XP Prof. zu
> installieren. Anleitungen/Literatur dazu habe ich. Sollte also nicht das
> Problem darstellen. Was mich aber interessiert, bevor ich mich weiter in
> die Materie einarbeite: Wieviel Ressourcen frisst so ein Perlscript als
> Dienst. Unter Linux (dort eben als Equivalent (Daemon) ist das ja kein
> Problem - schon praktiziert) aber wie sieht das unter WIN aus? Hat jemand
> hier damit schon Erfahrungen.
Anscheinend denkst Du, daß der Ressourcenverbrauch eines
perl-Porgrammes unter Windows anders ist als unter Linux. Dafür gibt
es allerdings keine Anhaltspunkte.
Wenn es unter Linux kein Problem macht, dann sollte dasselbe für
Windows zutreffen.
Es kann alllerdings sein, daß die Performance unter Windows anders ist
wegen
a) anderer Speicherverwaltung des OS
b) anderen Filesystemen mit anderen Eigenschaften
c) Verwendung von Funktionen, die unter Windows emuliert werden müssen
(fork, etc.)
d) Verwendung von graphischen Features
Ich setze natürlich voraus, daß Du das Programm schon getestet hast
und festgestellt hast, daß es unter Windows überhaupt läuft.
Re: Perlscript als Dienst (Service) unter WIN XP
am 23.11.2006 18:37:29 von Timothy Kesten
Ingo Menger wrote:
> Anscheinend denkst Du, daà der Ressourcenverbrauch eines
> perl-Porgrammes unter Windows anders ist als unter Linux. Dafür gibt
> es allerdings keine Anhaltspunkte.
Hmmm ... wie wird der Perl-Interpreter unter WIN verwaltet. Das ist für mich
die Frage. Sprich, was wird "vorgehalten" um das Perlscript zu nutzen (als
Dienst).
> Wenn es unter Linux kein Problem macht, dann sollte dasselbe für
> Windows zutreffen.
Hoffen wir das mal ;-)
> c) Verwendung von Funktionen, die unter Windows emuliert werden müssen
> (fork, etc.)
"geforkt" wird
> d) Verwendung von graphischen Features
soll TK aufrufen
> Ich setze natürlich voraus, daà Du das Programm schon getestet hast
> und festgestellt hast, daà es unter Windows überhaupt läuft.
Tut es, soll heiÃen: es läuft und wartet auf eine Socket-Verbindung.
Allerdings eben im Vordergrund - mit allen Nachteilen.
Jetzt soll es im Hintergrund (also als "Daemon" oder eben als "Dienst")
warten und bei entsprechenden Socketverbindungen entsprechend reagieren.
Wie gesagt - unter Linux "Null Problemo" unter WIN bisher nur im Vordergrund
probiert.
Timothy
Re: Perlscript als Dienst (Service) unter WIN XP
am 23.11.2006 21:40:32 von Thomas Wittek
Timothy Kesten schrieb:
> Tut es, soll heiÃen: es läuft und wartet auf eine Socket-Verb=
indung.
> Allerdings eben im Vordergrund - mit allen Nachteilen.
> Jetzt soll es im Hintergrund (also als "Daemon" oder eben als "Dienst")=
> warten und bei entsprechenden Socketverbindungen entsprechend reagieren=
> Wie gesagt - unter Linux "Null Problemo" unter WIN bisher nur im
> Vordergrund
> probiert.
Was spricht denn dagegen, es einfach mal auszuprobieren (und uns die
Ergebnisse mitzuteilen ;)) ?
--=20
Thomas Wittek
http://gedankenkonstrukt.de/
Jabber: streawkceur@jabber.i-pobox.net
Re: Perlscript als Dienst (Service) unter WIN XP
am 23.11.2006 21:46:58 von Timothy Kesten
Thomas Wittek wrote:
> Was spricht denn dagegen, es einfach mal auszuprobieren (und uns die
> Ergebnisse mitzuteilen ;)) ?
Nichts.
Werde ich wohl tun müssen. ;-)
Dazu muss ich aber erst mal eine Testumgebung in einer VM installieren, da
a) das Zielsystem ein produktives System ist (also da nicht mal "so einfach
probiert" werden kann)
und
b) ich nur Linux hier am laufen habe.
Aber ich werde mir morgen mal die Mühe machen und dann , selbstverständlich,
hier die Ergebnisse mitteilen.
Dachte nur, hier hätte vielleicht jemand damit schon Erfahrungen.
Gute Nacht
Timothy
Re: Perlscript als Dienst (Service) unter WIN XP
am 24.11.2006 00:42:00 von MH
Timothy Kesten [83311@gmx.de] schrieb:
[...]
>Dachte nur, hier haette vielleicht jemand damit schon Erfahrungen.
Ja, habe ich - laeuft ohne Probleme, braucht nicht mehr Speicher, CPU,
was auch immer als unter Linux.
Allerdings nutze ich eine selbstgebaute Perl-Version 5.8.8, keine der
Standard-Distributionen von ActiveState - fuer die kann ich nicht
sprechen. Allerdings glaube ich auch da nicht, dass es viel ausmacht.
>Gute Nacht
>Timothy
Ciao.
Michael.
--=20
Michael Hirmke | Telefon +49 (911) 557999
Wilhelm-Spaeth-Strasse 52 | FAX +49 (911) 557664
90461 Nuernberg | E-Mail mailto:mh@mike.franken.de
| WWW http://www.hirmke.de/
Re: Perlscript als Dienst (Service) unter WIN XP
am 24.11.2006 08:26:39 von Timothy Kesten
Michael Hirmke wrote:
> Timothy Kesten [83311@gmx.de] schrieb:
>
> [...]
>
>>Dachte nur, hier haette vielleicht jemand damit schon Erfahrungen.
>
> Ja, habe ich - laeuft ohne Probleme, braucht nicht mehr Speicher, CPU,
> was auch immer als unter Linux.
Danke - so etwas wollte ich hören.
Wenn hier jemand gesagt hätte:"Lass es. Benötigt mindestens 1 GB und läuft
schnarch langsam" oder so etwas Ãhnliches, dann hätte ich mir die Arbeit
mit der Testumgebung etc. schenken und somit viel Zeit sparen können.
So aber mache ich mich gleich mal dran.
Also - nochmals Danke und einen schönen sonnigen (zumindest hier in Berlin)
Tag noch
Timothy
Re: Perlscript als Dienst (Service) unter WIN XP
am 24.11.2006 09:32:48 von Ingo Menger
Timothy Kesten schrieb:
> Ingo Menger wrote:
>
> > Anscheinend denkst Du, daß der Ressourcenverbrauch eines
> > perl-Porgrammes unter Windows anders ist als unter Linux. Dafür gibt
> > es allerdings keine Anhaltspunkte.
> Hmmm ... wie wird der Perl-Interpreter unter WIN verwaltet.
Gar nicht. Es ist einfach perl.exe und perlXYZ.dll, die irgendwo
stehen. Da gibts nichts zu "verwalten".
> > Ich setze natürlich voraus, daß Du das Programm schon getestet hast
> > und festgestellt hast, daß es unter Windows überhaupt läuft.
> Tut es, soll heißen: es läuft und wartet auf eine Socket-Verbindung.
> Allerdings eben im Vordergrund - mit allen Nachteilen.
> Jetzt soll es im Hintergrund (also als "Daemon" oder eben als "Dienst")
> warten und bei entsprechenden Socketverbindungen entsprechend reagieren.
Das Annehmen einer Verbindung und evtl. das fork()en eines neuen
Prozesses würde ich schon noch testen.
Ansonsten: es ist hier (wie so oft) keinerlei Magie im Spiel. Aus Sicht
von $OS ist perl(.exe) ein stinknormales (Consolen-)Programm. Linux hat
noch die Besonderheit, daß dies für alle Programme gleichermaßen
gilt. Von welchem anderen Programm dieses perl aufgerufen wird, ist $OS
völlig wurscht, solange das Programm selbst damit zurechtkommt.
Re: Perlscript als Dienst (Service) unter WIN XP
am 24.11.2006 10:59:55 von Timothy Kesten
Ingo Menger wrote:
>> Hmmm ... wie wird der Perl-Interpreter unter WIN verwaltet.
>
> Gar nicht. Es ist einfach perl.exe und perlXYZ.dll, die irgendwo
> stehen. Da gibts nichts zu "verwalten".
Okay - hatte eben nur keine Ahnung, welche Ressourcen der Perl-Interpreter
verbraucht, wenn er irgendwie für Dienste benötigt wird.
Letztendlich habe ich (noch) gar keine Ahnung, wie Dienste unter WIN
verwaltet werden. Wahrscheinlich eben nur Registry-Einträge, die dann auf
die entsprechenden Programme verweisen.
Andererseits muss das Perl-Script ja schon (im Hintergrund) laufen um am
Socket zu lauschen.
Egal - ich verfahre erstmal einfach nach "Lehrbuch" ;-) um den Service
einzurichten und sehe dann weiter.
> Das Annehmen einer Verbindung
klappt
> und evtl. das fork()en eines neuen Prozesses würde ich schon
> noch testen.
forken selbst klappt auch.
Nur der Aufruf der TK-Anwendung (bisher als 'sub()' definiert) im
child-Prozess zickt rum. Irgendwelche Speicherzuweisungen für das
"MainWindow" klappen nicht.
Das habe ich gelöst, indem im child-Prozess per 'system()' ein weiteres
Script mit der entsprechenden TK-Anzeige aufgerufen wird, aufrufe (oh mann,
was für ein Deutsch).
Das geht dann.
Timothy
Re: Perlscript als Dienst (Service) unter WIN XP
am 24.11.2006 20:50:43 von Slaven Rezic
Timothy Kesten <83311@gmx.de> writes:
[...]
> forken selbst klappt auch.
> Nur der Aufruf der TK-Anwendung (bisher als 'sub()' definiert) im
> child-Prozess zickt rum. Irgendwelche Speicherzuweisungen für das
> "MainWindow" klappen nicht.
> Das habe ich gelöst, indem im child-Prozess per 'system()' ein weiteres
> Script mit der entsprechenden TK-Anzeige aufgerufen wird, aufrufe (oh mann,
> was für ein Deutsch).
> Das geht dann.
Forken (unter Windows heißt das in Wirklichkeit: einen neuen
Interpreter-Thread erzeugen) und Tk benutzen ist eine heikle Sache.
Unter Unix hat man Probleme, wenn zwei Prozesse auf das gleiche
Tk-System zugreifen. Unter Windows gibt es offensichtlich noch mehr
Probleme.
Du bist aus Berlin? Dann ist ein Besuch bei den Perl Mongers Pflicht:
http://perlmongers.de/?BerlinPM#Treffen_im_November
:-)
Slaven
--
Slaven Rezic - slaven rezic de
babybike - routeplanner for cyclists in Berlin
handheld (e.g. Compaq iPAQ with Linux) version of bbbike
http://bbbike.sourceforge.net
Re: Perlscript als Dienst (Service) unter WIN XP
am 25.11.2006 09:53:37 von Timothy Kesten
Slaven Rezic wrote:
> Forken (unter Windows heiÃt das in Wirklichkeit: einen neuen
> Interpreter-Thread erzeugen) und Tk benutzen ist eine heikle Sache.
> Unter Unix hat man Probleme, wenn zwei Prozesse auf das gleiche
> Tk-System zugreifen. Unter Windows gibt es offensichtlich noch mehr
> Probleme.
Allerdings - aber das habe ich ja (eigentlich) gelöst.
Bleibt eben nur noch (siehe anderen Thread) das Problem mit der
Desktopausgabe ohne Konsolenfenster bei Nutzung als Dienst :-(
> Du bist aus Berlin? Dann ist ein Besuch bei den Perl Mongers Pflicht:
> http://perlmongers.de/?BerlinPM#Treffen_im_November
Schaun mer mal ;-)
Timothy