[Allegro] Hohe CPU-Last durch Avanti

Jarmo Schrader jarmo.schrader at uni-hildesheim.de
Mi Jan 5 14:32:16 CET 2022


Hallo Herr Lehmann,

herzlichen Dank für Ihre Anmerkungen! Mir ist völlig klar, dass die 
heh-Archivseite keinerlei aktuellen Ansprüchen genügt. Zumindest derzeit 
ist das Angebot allerdings so weit unten auf der Prioritätenliste, dass 
ich eigentlich gar keine Ressourcen dafür verwenden sollte.

Ich hatte halt gehofft, dass es für die CPU-Last eine einfache Erklärung 
gibt und ich vielleicht nur irgendwo eine Kleinigkeit anpassen muss.
Aber evt. ist avanti einfach so, denn selbst wenn ich testweise in der 
avanti.conf ausschließlich die avdemo-Datenbank aktiviere, ist die 
CPU-Last gleich, obwohl diese Datenbank von außen gar nicht erreichbar ist.
Das war schon auf unserem alten CentOS-System so und eben jetzt unter 
Ubuntu 20.4 - habe es halt die ganzen Jahre ignoriert... Andererseits 
wäre es erstaunlich, wenn ich der einzige bin, dem das all die Jahre 
aufgefallen ist - wenn es denn eine generelle Eigenschaft von avanti ist.

Ihre Vorschläge für das Loglevel habe ich jedenfalls übernommen.

Falls wir uns doch noch einmal dazu entschließen sollten, die 
Holthusen-DB auf eine neue Basis zu stellen, komme ich gern auf Ihr 
Angebot zurück! VuFind wäre da sicherlich eine gute Alternative, zumal 
unser HilKat <https://hilkat.uni-hildesheim.de/vufind/> ja auch auf 
VuFind basiert.

Mit besten Grüßen
Jarmo Schrader


Guten Tag Herr Schrader,
danke für Ihre Nachricht.
Am Dienstag, 4. Januar 2022 um 09:22 schrieben Sie.
Ihre Nachricht finden Sie am Ende dieser eMail.

> / Liebe Allegro Gemeinde,  /
> / an der UB Hildesheim betreiben wir seit vielen Jahren eine einfache  > Allegro-Datenbank mit Weboberfläche für den Nachlass des > 
Schriftstellers Hans Egon Holthusen: > 
https://ubwww.uni-hildesheim.de/cgi-bin/holthusen/heh/maske.pl?db=heh 
/uraltes
> gedöns, sieht gar nicht schön aus. keine funktionen. egal.




> / Das Ganze läuft unter Linux seit Jahren stabil und anstandslos,  /tja, so muss es sein. nur linux kann das.

> /  allerdings erzeugt der Avanti-Dienst konstant zwischen 15% und 20%  > CPU-Last (laut top), />/
/bei aktiven ca 30(sik) online-katalogen für bibliotheken sieht es so aus:
   PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
25913 allegron  20   0   896  296  192 S   19  0.0  36:01.12 1-avanti
25915 allegron  20   0   884  200  140 S   19  0.0  36:03.31 2-avanti
25920 allegron  20   0  1144  616  200 S   19  0.0  36:40.95 3-avanti

[nicht verwirren lassen, es sind 3 verschiedene avanti-aufrufe]



> / selbst wenn keine Anfragen gestellt werden.  /dass ist bei mir leider nie der fall. und unterschätzen sie die 
"chin. freunde" nicht (baiduu spider und co), die halten Ihren server 
auf trab!


> / Auch wenn unser Server die Last gut verträgt, missfällt mir das  > sinnlose verheizen von CPU-Zyklen doch zunehmend. />/ Kann ich da 
etwas tun?
/keine ahnung.....


lassen wir doch mal ihren "heh"-katalog mal "etwas schöner" auf meinem 
testserver laufen, vielleicht auch mit anderen loglevel-werten?
das kann ich auf die schnell sicherlich derzeit gut einrichten. ich ruhe 
mich gerade von marc aus....


> / Aktuell läuft bei uns Avanti 29.1 in 32 bit. Ein Test mit der  > 64-bit Version vom 05.08.2020 hat an der CPU-Last nichts geändert, > 
allerdings ergab die Suche dann immer 0 Treffer (wohl ein > 
Konfigurationsproblem). /
> / Die avanti.conf sieht so aus:  /
> / [general]  />/ port=4949
/>/ AnonymousAccess=yes
/>/ IniFileTimeCheck=off
/>/ logfile=/var/log/avanti/avanti.log
/>/ prefork = 1
/>/ max_cputime = 120
/>/ loglevel = all,!mem,!data
/
> / [heh]  />/ directory = /usr/local/avanti/heh/
/>/ access = 3
/>/ konfiguration = a
/>/ indexparameter = cat
/>/ opac=OPAC:0
/>/ master=AVANTI:3
/>/ admin=ALLEGRO:2
/
mir fällt nix negatives auf.



> / Die Logs sind wenig erhellend:  /naja. da steht viel müll drin. und nicht "das richtige" ;-) s.u.!

> / [2022-01-04 09:15:08]   (NOTE) avanti server listening on port 4949  > <at avanti.c, line 236> />/ [2022-01-04 09:15:22]   (NOTE) <conn 0> 
opened from host 127.0.0.1 <at avanti.c, line 405>
/>/ [2022-01-04 09:15:22]  (SLAVE) <conn 0> setting cpu time rlimit to 
120 <at avanti.c, line 586>
/>/ [2022-01-04 09:15:22]     (IO) <conn 0> stderr -> log (31 bytes) <at 
avanti.c, line 552>
/>/ [2022-01-04 09:15:22]  (SLAVE) <conn 0> slave started (prefork = 1) 
<at avanti.c, line 586>
/>/ [2022-01-04 09:15:22]     (IO) <conn 0> stderr -> log (28 bytes) <at 
avanti.c, line 552>
/
als tip:
loglevel = all,!mem,!io,!data,!location,!level
#loglevel = all

der erste eintrag ist für den normalbetrieb.
der zweite eintrag ist zum testen! (nicht vergessen, zurückzuschalten, 
avanti rebooten)




!SO! könnte ein log aussehen:
=============================
da sind viel mehr nützliche infos drin:
[2022-01-03 01:01:08] avanti started from /
[2022-01-03 01:01:08] avanti server av-x v31.1 listening on port 4949
[2022-01-03 01:01:08] start slave - /usr/local/avanti/bin/avanti -slave
[2022-01-03 01:01:08] ci_open /usr/local/avanti/bin/avanti -slave
[2022-01-03 01:01:08] <conn 0> opened from host 127.0.0.1
[2022-01-03 01:01:08] Database: @ DB=smu ID=master
[2022-01-03 01:01:08] <conn 0> setting cpu time rlimit to 120
[2022-01-03 01:01:08] <conn 0> slave 2 starting 
'/usr/local/avanti/bin/./acon'
[2022-01-03 01:01:08] <conn 0> Directory for DB=smu is 
/home/schwulesmuseum.allegronet.de/data/smu
[2022-01-03 01:01:08] <conn 0> Database : smu ; User : master ; Access : 3
[2022-01-03 01:01:08] <conn 0>
[2022-01-03 01:01:08] <conn 0>
[2022-01-03 01:01:08] <conn 0> child exited with status 4352
[2022-01-03 01:01:08] <conn 0> JOB DONE
[2022-01-03 01:01:08] end job




was halten sie vom heh-katalog im Gewande von VuFind?
====================================================
hier die zfl als vufind. auf https://zfl.vufindnet.de/zfl/



soweit erstmal und terve
Ihr klaus lehmann



> / Mit besten Grüßen  />/ Jarmo Schrader
/



-- 
Mit freundlichen Grüßen,
Ihr Klaus Lehmann
http://allegronet.de * eMail: allegronet at t-online.de 
<https://bibservices.biblio.etc.tu-bs.de/mailman/listinfo/allegro> * 
phone: 03528-452 807(fax 809) * mobil: 0171-953 7843
allegronet.de * Klaus Lehmann * D-01454 Radeberg * Bahnhofstr. 1
zuständiges Finanzamt: FA Hoyerswerda; zuständige Kammer: IHK Dresden;
zuständige Aufsichtsbehörde: Gewerbeamt Radeberg; USt-IdNr: DE247550760
* Software für zufriedene Bibliothekare: 1000x bewaehrt und ergiebig
* Bereits 4x allegro-utf8. Buchen Sie die allegro-Roadshow. Yes we can!
* Internetkataloge & WebHosting für Allegro-C & Web 2.0 mit VuFind
* 2011-22: Sponsor: Peter-Sodann-Bibliothek+IFLA:allegro-utf8
* 2013-14: Bolero 32bit.+allegro-zdb: endlich. + eBooks
* 2015-16: allegro-imd. Die weltgrößte(?) Filmdatenbank
* 2017-22: Exporte. Marc und Co. Marc ist sehr different
* 2019: All for VuFind! The perfect export into marc21
* 2020: kohanet.de. Alternativen zu allegro-C und allegronet.de



Am Dienstag, 4. Januar 2022 um 09:22 schrieben Sie:
> / Liebe Allegro Gemeinde,  /
> / an der UB Hildesheim betreiben wir seit vielen Jahren eine einfache  > Allegro-Datenbank mit Weboberfläche für den Nachlass des > 
Schriftstellers Hans Egon Holthusen: > 
https://ubwww.uni-hildesheim.de/cgi-bin/holthusen/heh/maske.pl?db=heh /
>/  > Das Ganze läuft unter Linux seit Jahren stabil und anstandslos, 
allerdings erzeugt der Avanti-Dienst konstant zwischen 15% und 20% 
CPU-Last (laut top), selbst wenn keine Anfragen gestellt werden. Auch 
wenn unser Server die Last gut verträgt, missfällt mir das sinnlose 
verheizen von CPU-Zyklen doch zunehmend.
/>/ Kann ich da etwas tun?
/
> / Aktuell läuft bei uns Avanti 29.1 in 32 bit. Ein Test mit der  > 64-bit Version vom 05.08.2020 hat an der CPU-Last nichts geändert, > 
allerdings ergab die Suche dann immer 0 Treffer (wohl ein > 
Konfigurationsproblem). /
> / Die avanti.conf sieht so aus:  /
> / [general]  />/ port=4949
/>/ AnonymousAccess=yes
/>/ IniFileTimeCheck=off
/>/ logfile=/var/log/avanti/avanti.log
/>/ prefork = 1
/>/ max_cputime = 120
/>/ loglevel = all,!mem,!data
/
> / [heh]  />/ directory = /usr/local/avanti/heh/
/>/ access = 3
/>/ konfiguration = a
/>/ indexparameter = cat
/>/ opac=OPAC:0
/>/ master=AVANTI:3
/>/ admin=ALLEGRO:2
/


> / Die Logs sind wenig erhellend:  /
> / [2022-01-04 09:15:08]   (NOTE) avanti server listening on port 4949  > <at avanti.c, line 236> />/ [2022-01-04 09:15:22]   (NOTE) <conn 0> 
opened from host 127.0.0.1 <at avanti.c, line 405>
/>/ [2022-01-04 09:15:22]  (SLAVE) <conn 0> setting cpu time rlimit to 
120 <at avanti.c, line 586>
/>/ [2022-01-04 09:15:22]     (IO) <conn 0> stderr -> log (31 bytes) <at 
avanti.c, line 552>
/>/ [2022-01-04 09:15:22]  (SLAVE) <conn 0> slave started (prefork = 1) 
<at avanti.c, line 586>
/>/ [2022-01-04 09:15:22]     (IO) <conn 0> stderr -> log (28 bytes) <at 
avanti.c, line 552>
/>/ [2022-01-04 09:15:22]     (IO) <conn 0> socket -> stdin (212 bytes) 
<at avanti.c, line 455>
/>/ [2022-01-04 09:15:22]  (SLAVE) <conn 0> forking 
'/usr/local/avanti/bin/..//bin/avanti-cl' <at avanti.c, line 586>
/>/ [2022-01-04 09:15:22]     (IO) <conn 0> stderr -> log (50 bytes) <at 
avanti.c, line 552>
/>/ [2022-01-04 09:15:22]  (SLAVE) <conn 0> forking 
'/usr/local/avanti/bin/..//bin/avanti-cl' <at avanti.c, line 586>
/>/ [2022-01-04 09:15:22]     (IO) <conn 0> stderr -> log (50 bytes) <at 
avanti.c, line 552>
/>/ [2022-01-04 09:15:22]     (IO) <conn 0> stdout -> socket (737 bytes) 
<at avanti.c, line 493>
/>/ [2022-01-04 09:15:22]     (IO) <conn 0> stdout -> socket (12 bytes) 
<at avanti.c, line 493>
/>/ [2022-01-04 09:15:22]  (SLAVE) <conn 0> Sorting 150 
records...donejob done <at avanti.c, line 586>
/>/ [2022-01-04 09:15:22]     (IO) <conn 0> stderr -> log (35 bytes) <at 
avanti.c, line 552>
/>/ [2022-01-04 09:15:22]     (IO) <conn 0> socket -> stdin (595 bytes) 
<at avanti.c, line 455>
/>/ [2022-01-04 09:15:22]  (SLAVE) <conn 0> forking 
'/usr/local/avanti/bin/..//bin/avanti-cl' <at avanti.c, line 586>
/>/ [2022-01-04 09:15:22]     (IO) <conn 0> stderr -> log (50 bytes) <at 
avanti.c, line 552>
/>/ [2022-01-04 09:15:22]     (IO) <conn 0> stdout -> socket (837 bytes) 
<at avanti.c, line 493>
/>/ [2022-01-04 09:15:22]     (IO) <conn 0> stdout -> socket (12 bytes) 
<at avanti.c, line 493>
/>/ [2022-01-04 09:15:22]  (SLAVE) <conn 0> job done <at avanti.c, line 586>
/>/ [2022-01-04 09:15:22]     (IO) <conn 0> stderr -> log (9 bytes) <at 
avanti.c, line 552>
/>/ [2022-01-04 09:15:22]     (IO) <conn 0> socket -> stdin (585 bytes) 
<at avanti.c, line 455>
/>/ [2022-01-04 09:15:22]     (IO) <conn 0> socket -> stdin (10 bytes) 
<at avanti.c, line 455>
/>/ [2022-01-04 09:15:22]  (SLAVE) <conn 0> forking 
'/usr/local/avanti/bin/..//bin/avanti-cl' <at avanti.c, line 586>
/>/ [2022-01-04 09:15:22]     (IO) <conn 0> stderr -> log (50 bytes) <at 
avanti.c, line 552>
/>/ [2022-01-04 09:15:22]     (IO) <conn 0> stdout -> socket (837 bytes) 
<at avanti.c, line 493>
/>/ [2022-01-04 09:15:22]     (IO) <conn 0> stdout -> socket (12 bytes) 
<at avanti.c, line 493>
/>/ [2022-01-04 09:15:22]  (SLAVE) <conn 0> job done <at avanti.c, line 586>
/>/ [2022-01-04 09:15:22]     (IO) <conn 0> stderr -> log (9 bytes) <at 
avanti.c, line 552>
/>/ [2022-01-04 09:15:22]     (IO) <conn 0> closed stdin <at avanti.c, 
line 465>
/>/ [2022-01-04 09:15:22]     (IO) <conn 0> closed stdout <at avanti.c, 
line 503>
/>/ [2022-01-04 09:15:22]  (SLAVE) <conn 0> slave finished ok <at 
avanti.c, line 586>
/>/ [2022-01-04 09:15:22]     (IO) <conn 0> stderr -> log (18 bytes) <at 
avanti.c, line 552>
/>/ [2022-01-04 09:15:22]     (IO) <conn 0> closed stderr <at avanti.c, 
line 539>
/>/ [2022-01-04 09:15:22]   (NOTE) <conn 0> closed <at avanti.c, line 437>
/
> / Mit besten Grüßen  />/ Jarmo Schrader/
-------------- nächster Teil --------------
Ein Dateianhang mit HTML-Daten wurde abgetrennt...
URL: <http://bibservices.biblio.etc.tu-bs.de/pipermail/allegro/attachments/20220105/8fe92cd2/attachment-0001.htm>


Mehr Informationen über die Mailingliste Allegro