[Vienna-pm] hash in shared memory?

LAUN Wolfgang wolfgang.laun at alcatel.at
Fri May 21 04:41:55 CDT 2004


Wenn ich die Erklärungen zu IPTables::IPv4::IPQueue richtig verstanden habe,
bekommt man die Packets mit einem blockierenden, zeitüberwachten Aufruf von
select(2). 

Für die Anwendung wären mir sowohl SM als auch threads zu aufwendig. Der
Vorschlag, die Daten mit einer Pipe weiterzuleiten, scheint am
einfachsten zu sein.

Der Sammler schreibt auf P, das mit open( P, "| dbwriter" ) eröffnet
wird; der DB-Schreiber liest einfach von STDIN. Allenfalls muss er noch
sicherstellen, dass er nicht zu lange im Read hängt, wenn die
DB-Updates genau periodisch stattfinden sollen.

Noch eins: Je mehr Info der Sammler filtert bzw. komprimiert, umso
geringer wird der Overhead zum Weiterleiten. Optimal wäre es vielleicht
sogar, nur die DB-Update-Kommandos an den dbwriter zu senden, der sich dann mit
den DB-Zugriffen herumschlagen kann.

(Mit threads in Perl habe ich keine Erfahrung - es gibt aber sicher eine
Reihe von systemabhängigen Feinheiten. Z.B.: Blockiert Perl mit threads bei 
select() komplett oder nur der thread, der select() aufruft?)

mfg
Wolfgang Laun

> -----Original Message-----
> From: Josef Bergmann [mailto:joe at bec.at]
> Sent: Friday, May 21, 2004 10:10 AM
> To: vienna-pm at mail.pm.org
> Subject: Re: [Vienna-pm] hash in shared memory?
> 
> Ich brauche einen Sammler-task der mir Pakete aus dem 
> IPTables::IPv4::IPQueue 
> Modul abholt. Das ganze sollte schnell und "nicht 
> blockierend" passieren (da 
> sonst der Netzverkehr ins stocken kommen kann).
> 
> Des weiteren brauche ich einen Task der mir Teile der 
> gesammelten Daten 
> periodisch in Datenbanken schreibt (wahrscheinlich RRD und MySQL).
> 
> Mein erster (klassicher Ansatz) war das Unix-like mit zwei 
> Prozessen zu 
> machen. Mittlerweile bin allerdings auf die Threads in Perl 
> (ithreads) 
> gestossen die shared hashes bereits implemetieren. Scheint 
> mir der perfekte 
> Ansatz zu sein.
> 
> Kann mir jemand dazu seine Erfahrungen mitteilen?
> 
> Danke!
> bye Josef
> -- 
> BERGMANN engineering & consulting  http://bec.at
> _______________________________________________
> Vienna-pm mailing list
> Vienna-pm at mail.pm.org
> http://mail.pm.org/mailman/listinfo/vienna-pm
> 



More information about the Vienna-pm mailing list