[Allegro] Hohe CPU-Last durch Avanti
Jarmo Schrader
jarmo.schrader at uni-hildesheim.de
Di Jan 4 09:22:28 CET 2022
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
--
Dr. Jarmo Schrader
stellv. Bibliotheksleiter
Fachreferat und EDV
Stiftung Universität Hildesheim
Universitätsplatz 1
31141 Hildesheim
Tel: +49 (0) 5121 - 883 - 93004
Fax: +49 (0) 5121 - 883 - 93005
jarmo.schrader at uni-hildesheim.de
Mehr Informationen über die Mailingliste Allegro