perlunity.de - PERL | JAVASCRIPT | PHP | MySQL | APACHE



#!/COMMUNITY

Members: 5374
davon online: 1
weitere User: 31
Click for quality!




11.02.2012 / 17:44

Community-Member werden   |   Paßwort vergessen   |   OnlineMonitor (1) Wer ist online ... OnlineMonitor starten !
     

 

Home


PERLscripts


PHPscripts


JAVAscripts


Hilfreiches


Links2www


Newscenter


Community


Interna




Community  »  Perl: Allgemeines Forum zur Themenübersicht Themensuche Themenansicht in Thread-Modus


Beitragseltsames problem
Seitenanfang
hi

also folgendes
grundsaetzlich entwickele ich unter debian ( testing /
lenny ) wes wegen die perl version wohl 5.10 ist.

und die meisten sachen laufen dann unter openbsd mit der aktuellen perl version 5.8.8.

aktuell werkele ich an einem daemon rum der dateien
ueberwacht und bei einer aenderund diese , modul_basiert, verarbeitet.

soweit so gut .
der perl daemon laeuft auf meiner entwicklungs kiste
genauso wie erwartet , sei es im nicht daemon mode ( zum debuggen ) als auch im daemon mode.

kopiere ich nun dieses script um auf die openbsd kiste
laeuft dieses auch sauber im debug ( also im nicht daemon mode ).

schalte ich jedoch hier um aud den daemon mode so
fuehrt er einmalig den filescan aus und verabschiedet
sich sang und klanglos.

wenn ich nun das modul bei dessen files er sich verabschiedet abschalte laueft er sauber wie gewollt.

unterschied zur test kiste ist a: das bs und die perl version und die anzahl der dateien die
in einem hash namens %monitor stehen.

der daemon code ist dieser


sub RunAsDaemon {

$SIG{'HUP' } = 'HandleSignal';
chdir '/' or die &mylogger ("Can’t chdir to /: $!");
open STDIN, '/dev/null' or die &mylogger ("Can’t read /dev/null: $!");
open STDOUT, '>>/dev/null' or die &mylogger ("Can’t write to /dev/null: $!");
open STDERR, '>>/dev/null' or die &mylogger ("Can’t write to /dev/null: $!");
defined(my $pid = fork) or die &mylogger ("Can’t fork: $!");
exit if $pid;
setsid or die &mylogger ("Can’t Start a new session: $!");
#open (PID, "+>/var/run/csd.pid" ) or die &mylogger ("$cfg{'ident'}D trouble with pid file" );
# print PID "$pid\n" ;
#close (PID);
umask 0;
}

wird vor der wihle schleife aufgerufe


&RunAsDaemon if (not($cfg{'debug'})) ;

gibt es irgendwelche unterschiede in den perl versionen das so ein effekt auftreten kann ?

gibt es ein limit von objekten die in einem
hash sein duerfen. ?

aktuell stehe ich etwas auf dem schlauch da
das ganze ja wie gewuescht auf der vevel kiste
laeuft.

holger

Datum: 13.10.2008-18:08

Beitragre: seltsames problem
Seitenanfang
hi

so nach etwas weiterem forschen liegt habe ich das gefuehl das es am speicher liegt der bei openbsd
limitiert wird.

ulimit -a sagt bei openbsd


time(cpu-seconds) unlimited
file(blocks) unlimited
coredump(blocks) unlimited
data(kbytes) 1048576
stack(kbytes) 8192
lockedmem(kbytes) 675246
memory(kbytes) 2024264
nofiles(descriptors) 128
processes 104

und bei linux

core file size          (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 24495
max locked memory (kbytes, -l) 32
max memory size (kbytes, -m) unlimited
open files (-n) 1024
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) 24495
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited

das bestaetigt auch meinte test mit dem script selber
schalte ich einige module ab das fuktioniert auch
der daemon mode unter openbsd wie gewuenscht.

aktuell funktionieren 31 files in der ueberwachtung.

holger

Datum: 14.10.2008-09:57

-






-
-