Christian Kruse: Ein Regexp-Problem

Beitrag lesen

Hallo Christoph,

Dabei war ich in einer meiner letzten Mails noch so des
Lobes voll! Hätte ich besser nicht? ;-)

Nee, besser nicht. Lob hab ich nicht verdient.

Jaa, ich weiss. Ich denke schon die ganze Zeit nach,
wie man eine derartige Ueberlastung verhindern kann...

Da das eine Art DDoS ist, wäre es sehr schwierig.

Deshalb denke ich ja auch schon die ganze Zeit nach ;)

Ist halt eine Lastspitze, muß man nehmen, wie sie kommen.

Tja, aber trotzdem gibt es IMHO genug zu optimieren. Ich habe
eben heute nochmal dran gebastelt und drei Sachen
zusammengebaut: erstens werden, wenn mehr als 20 Verbindungen
in der Queque sind, die neuen abgelehnt:

if(head.clients.clientnum > MAX_CLIENT_NUM) {
        fo_log(LOG_STD,__FILE__,__LINE__,"rejecting connection\n");
        writen(connfd,"507 Server has to many connections\n",35);
        close(connfd);
        pthread_mutex_unlock(&head.clients.lock);
      }

Ausserdem hat der poll-Thread jetzt grundsaetzlich eine
Prioritaets-Stufe weniger. Zuletzt werden Postings jetzt
nicht mehr durch einzelne write()-Calls 'rausgeschickt,
sondern die Antwort wird im Speicher zusammengesetzt und dann
mit einem einzigen write()-Call 'rausgeschickt. Damit werden
eine *Menge* Systemcalls eingespart.

Finde es den Aufwand nicht wert, deswegen komplizierte und
wenig effiziente Software zu basteln

Ich schon :) Ist halt eine Herausforderung.

es scheint
so, als ob ein paar Unis und FHs (Uni Dortmund, FH
Dortmund, Uni Muenster, Uni Koeln) gerade Self
vorstellen. Auf jedenfall kommen von denen *sehr* viele
Hits (bis zu 30k in einer Stunde).

Ich hatte erst ein Posting bei /. vermutet, war aber wohl
nicht ;-)

*g* Nee, das waere etwas *sehr* unwahrscheinlich.

Aber sei doch stolz:
Der Server ächzt zwar kräftig, aber er hält!

Naja... nicht wirklich.

Da geben andere mit größerer Hardware schon bei weniger
auf! ;-)

Ja, *das* stimmt :)

30.000 Hits/Std gehen IMHO wohl schon an die Substanz des
Prozessors, ist schon sehr brutal. (Muß ja immerhin auch
noch gzippen!)

Der Prozessor ruht sich aus:

load averages: 0.48, 0.48, 0.42

Aber ich werde mal schauen, vielleicht hast Du ja irgendwo
unabsichtlich eine Bremse eingebaut.

Ja, waere nett. Hab die Aenderungen gerade eingecheckt.

Gruesse,
 CK