symlink.ch
Wissen Vernetzt - deutsche News für die Welt
 
symlink.ch
FAQ
Mission
Über uns
Richtlinien

Moderation
Einstellungen
Story einsenden

Suchen & Index
Ruhmeshalle
Statistiken
Umfragen

Redaktion
Themen
Partner
Planet

XML | RDF | RSS
PDA | WAP | IRC
Symbar für Opera
Symbar für Mozilla

Freunde
Benutzergruppen
LUG Switzerland
LUG Vorarlberg
LUGen in DE
SIUG
CCCZH
Organisationen
Wilhelm Tux
FSF Europe
Events
LinuxDay Dornbirn
BBA Schweiz
CoSin in Bremgarten AG
VCFe in München
Menschen
maol
Flupp
Ventilator
dawn
gumbo
krümelmonster
XTaran
maradong
tuxedo

 
Der neue Server
Veröffentlicht durch maol am Freitag 29. Juni, 10:09
Aus der Alles-klar Abteilung
Nachrichten Währenddem ich beim Zahnarzt auf dem Folterstuhl lag, ist der Upgrade über die Bühne gegangen. Die Website war nur 5 Minuten down (Datenbankumzug), und nur 25 Requests hatten ein "Connection refused". Selbst über die lahmen Internetleitungen merkt man den Performance-Boost deutlich.

Der neue Server von Symlink.ch ist ein Dual P-III 866 mit 512MB RAM und 50GB RAID-1 und Debian Woody auf Linux 2.4.5.. Betrieben wird der Server durch die Linux User Group Schweiz, namentlich deren Präsident bit, welcher gleichzeitig Administrator des Servers ist. Die Hardware wurde durch die Firma Dalco der LUGS zur Verfügung gestellt. Dalco hat Erfahrung mit starken Maschinen, sie haben z.B. der ETH den Beowulfcluster Asgard geliefert: 192 Dual-PIII, je 1GB RAM.

bit meint: "In der aktuellen Konfiguration ist der Server faehig, bis zu 100 concurrent User mit Symlink-News zu beliefern. Eine "Heise Attacke" ist nun ohne Kopfschmerzen des Sysadmins moeglich :-)".

Microsoft verzichtet auf Smart-Tag Technologie | Druckausgabe | Dell fragt:"Intel oder AMD besser?"  >

 

 
symlink.ch Login
Login:

Passwort:

extrahierte Links
  • Heise
  • Debian
  • symlink.ch
  • Linux
  • Linux User Group Schweiz
  • bit
  • Dalco
  • Asgard
  • Heise Attacke
  • Mehr zu Nachrichten
  • Auch von maol
  • Symlink
    Besuch uns im IRC auf irc.lugs.ch im Channel #symlink

    Diese Diskussion wurde archiviert. Es können keine neuen Kommentare abgegeben werden.
    nur 100 Sessions? (Score:1)
    Von EuphoriasChild am Friday 29. June, 22:56 MET (#1)
    (User #235 Info) http://www.euphoriasChild.darktech.org
    Als ASP Entwickler (unter IIs) kommt mir das bei der Hardware doch recht wenig vor?
    <zitat quelle="Verheised">
    Pro Child (aktive TCP-Connection) brauchen wir 12 MB Memory. 400
    Clients * 12 MB => 4,8 GB Memory.
    </zitat>
    Das kann doch fast nicht sein? 12MB pro aktiver Verbindung? Das macht doch kein gutbesuchter Webserver mit Standardaustattung mit?

    Gruß, Andreas
    EuphoriasChild
    Re:nur 100 Sessions? (Score:1)
    Von DawnRazor (thomasb at trash dot net) am Saturday 30. June, 11:50 MET (#2)
    (User #8 Info) http://www.trash.net/~thomasb/
    Na ja....

    Unser httpd auf Symlink ist nur so gross, weil er viele Module geladen hat. Da wäre mal php3, php4, mod_ssl oder mod_perl zu nennen.

    Vorallem mod_perl braucht viel Memory. Denn, es hat einen Cache von den Seiten, die aufgerufen wurden und behält bereits kompilierte Seiten im Speicher.
    --
    Anyone can make an omelet with eggs. The trick is to make one with none.

    Re:nur 100 Sessions? (Score:1)
    Von EuphoriasChild am Saturday 30. June, 17:41 MET (#3)
    (User #235 Info) http://www.euphoriasChild.darktech.org
    Verstehe ich das richtig: Für jede Session werden die Module neu Instanziert?
    EuphoriasChild
    Re:nur 100 Sessions? (Score:1)
    Von DawnRazor (thomasb at trash dot net) am Saturday 30. June, 21:28 MET (#4)
    (User #8 Info) http://www.trash.net/~thomasb/
    Nein, eben nicht.

    Der Sinn hinter mod_perl ist ja, dass nicht bei jedem Request wieder alles neu geladen werden muss. Deshalb braucht ein httpd-Child auch soviel Memory, weil er cached.
    --
    Anyone can make an omelet with eggs. The trick is to make one with none.

    Re:nur 100 Sessions? (Score:1)
    Von bit (beat@rubis.ch) am Saturday 30. June, 21:35 MET (#5)
    (User #2 Info) http://www.rubis.ch/~beat/
    Symlink ist eine in Perl geschriebene Applikation. Die "Intelligenz" dieser Applikation ist in einem aehnlichen Umfang wie viele "grosse" Appliktationen vor 10 Jahren. Der Symlink Code umfasst 10442 Zeilen Perlcode der ein gutes Dutzend externe Module mitzieht.

    Um die Performance zu steigern, faehrt Apache in jedem Child einen Perlinterpreter mit. Nach den erstmaligen Laden der Scripts wird der Bytecode gecacht - einerseits bringt dies im Verhaeltniss zu einem Wegwerfprogramm wie ein CGI massiv mehr Performance, andererseits benoetigen die Perlinterpreter entsprechend Memory.

    Verglichen mit typischen ASP Loesungen wie Warenkorbsysteme ist Symlink massiv groesser und berechtigt daher auch eine muskuloese Maschine. Wer sich einmal mit Slashcode beschaeftigt hat, wird verstehen, dass dies nicht ein kleines Projekt ist...

    Mir als Sysadmin unterliegt die Aufgabe, fuer den "normalen" Betrieb die richtige Anzahl Apachechilds zu fahren. Jedes Child benoetigt ca. 2-3 Sekunden um den Perlcode zu compilieren (mehr Childs beschleunigen den normalen Betrieb), andererseits muss ich dafuer sehen, dass das Memory nicht ueberlaster wird. Die maximale Anzahl Childs ist wiederum limitiert, um nach einer DOS-Attacke ein lauffaehiges System zu haben.

    Derzeit sind permanent 15 Childs am laufen. Der Timeout fuer persitent Connections liegt bei 3 Sekunden - daher wird ein Child nur sehr kurz an einen User gebunden. Peak duerfen zur Zeit 50 Childs laufen - das gibt eine Memoryauslastung von ca. 75%. Sollte Bedarf bestehen, so kann dieser Wert auf 100 Childs erhoeht werden mit dem Problem. dass alle anderen Services des Servers brachial ausgelagert werden. Nicht vergessen werden darf die Datenbank - jedes Child hat eine persistent connection zum MySQL.

    Nebst den "teuren" Childs mit dem Perlinterpreter dreht ein zweiter Apache, der die Bilder serviert. Dieser muss nur statischen Content ausliefern - die einzelnen Childs sind massiv kleiner. Dieser Server hat laengere Timeouts was den subjektiven Geschiwindigkeitseindruck verbessert.

    Alles in allem ist Symlink eine gewaltige Herausforderung fuer mich als Administrator. Es ist nicht eine 0815 Applikation sondern bringt - bei falscher Konfiguration - jede noch so potente Maschine in den Boden.

    Gehen wir davon aus, dass ein typischer User ca. 1 Minute braucht, um eine Seite zu lesen. Bei einem Timeout von 3 Sekunden fuer die persitent Connections vermag der Server mit 50 Children pro Minute 1000 Seiten servieren. Damit ist Symlink in der Lage, 1000 User mit News zu versorgen. Die letzte Heise Attacke schwankte zwischen 300 und 500 Besuchern - ein Wert, der bei dem bestehenden Wachstum des Internets und des Linux-Marktes die Serverkapazitaet in 1-2 Jahren auaschoepft ;-)
    --
    No women, no Cray.

    Linux User Group Schweiz
    Durchsuche symlink.ch:  

    Never be led astray onto the path of virtue.
    trash.net

    Anfang | Story einsenden | ältere Features | alte Umfragen | FAQ | Autoren | Einstellungen