Zum Inhalt springen

Performance Typo3, EAccelerator, Req/s, Cache

Erstellt am 14. September 2006 · 4 Antworten · letzte Antwort am 15. September 2006

Tags: Frage

schmidtsmikey ·

Hallo Community,

ich habe eine recht stark besuchte Webseite in der Größenordnung von 3 Millionen Page Impressions im Monat. Da diese Seite auf Typo3 umgestellt wurde und nach der Umstellung mein Provider in die Knie gegangen ist, habe ich das ganze selbst in die Hand genommen und einen eigenen Webserver aufgebaut, der dann in ein Rechenzentrum gestellt wird:

Linux Gentoo 64 Bit
Apache/2.0.58
PHP 5.0.5-pl5-gentoo
Zend Engine v2.0.5 with eAccelerator v0.9.5-rc1
Typo3 3.8

Pentium D 945 3,4 GHz, 4 MB L2-Cache, Dual-Core, 64 Bit
2 GB DDR2
80 GB S-ATA HDD

Die Webseite an sich ist nix spektakuläres, also 2 Menüs, tt_news, tt_topcontent und druckansicht sind eingerichtet. Um eine möglichst hohe Performance zu gewährleisten, habe ich das Tuning-Tutorial auf der Typo3.org Webseite durchgearbeitet. Dabei ist folgendes herausgekommen:

Typo3-Seite ohne eAccelerator, ohne Caching

(Requests per second: 1.12 [#/sec] (mean))
http://nopaste.php-q.net/239622

Typo3-Seite mit eAccelerator, ohne Caching

(Requests per second: 1.94 [#/sec] (mean))
http://nopaste.php-q.net/239623

Typo3-Seite mit eAccelerator, mit Caching

(Requests per second: 7.08 [#/sec] (mean))
http://nopaste.php-q.net/239624

Schön zu sehen, wie sich die Tuning-Maßnahmen positiv bemerkbar, aber für eine solche Hardware finde ich das ganz schön schwach! Da die Startseite wegen den News nicht gecached werden soll, hätte ich dann gerade einmal 2 Requests pro Sekunde, was für mich bedeutend zu wenig ist. Woanders liest man auch Ergebnisse von 40 bis 100 Req/s.

Was mache ich falsch? Hat jemand ähnliche Erfahrungsberichte? Vielleicht postet jemand anderes mal seine Benchmark-Werte mit dem Apache-Tool ab...In dem Tutorial und ner Athlon XP Maschine mit 1 GB RAM erreichen die Jungs mit der Bigfoot-Seite anfangs 4, später sogar 55 Req/s...

P.S.: Die Anfrage bedeuetet doch, dass 1000 Anfragen gemacht werden, wobei 100 auf einmal gemacht werden, richtig? Das heißt also, es kommen 100 Besucher und jeder ruft nacheinander 10 Seiten auf...oder?

*grübel*

woida ·

Also ich komm mit einem AMD XP 2400+ mit 512MB RAM auf 4.32 [#/sec] (Debian stable, Apache 1.3, PHP: 4.3.10-16). Ein paar Einstellungen habe ich angepaßt (QueryCache, MemoryLimit), aber richtig optimiert hab ich da noch nix.

Auf meinem Testserver AMD XP 2600+ mit 1GB (gleiche T3 Installation wie oben) komme ich aber "nur" auf 3.90 [#/sec]
(Debian stable, Apache 2.0, PHP: 4.4.4-0.dotdeb.1). Bis aufs memory_limit habe ich nichts verändert. Mit dem eaccelerator (alle Werte auf Standard gelassen) schaff ich dann auf dem gleichen Server mit der gleichen Seite 19.18 [#/sec] (mean).

Da die Startseite wegen den News nicht gecached werden soll, hätte ich dann gerade einmal 2 Requests pro Sekunde, was für mich bedeutend zu wenig ist.

Dann würde ich empfehlen, das Caching einzuschalten.

Für die anderen Benutzer hier noch der Link, den schmidtsmikey leider nicht postet: http://typo3.org/development/articles/testing-and-tuning-typo3-performance/

schmidtsmikey ·

Also, ich habe einen Fehler gemacht und nicht das Quickstart-Paket genommen, sondern meine Seite. Jetzt habe ich mal Quickstart 3.8.1 installiert und folgende, recht erfreuliche Ergebnisse erzielt:

http://192.168.2.6/quickstart-3.8.1/index.php
Requests per second: 121.54 [#/sec]

http://192.168.2.6/quickstart-3.8.1/index.php?no_cache=1
Requests per second: 49.30 [#/sec]

Das ist natürlich sehr erfreulich, da ich sehe, dass mein System deutlich schneller als dieses Athlon XP System ist! Und das um Längen...

Erschreckend für mich ist, dass mein Typo3-Web so viele Ressourcen frisst! Vielleicht sollte ich die eine oder andere Extension rausnehmen:

CSS styled content css_styled_content 0.2.2
Rich Text Editor rte 0.0.10
htmlArea RTE:FIXED PRS rtehtmlarea 0.7.0
News tt_news 2.2.24
German language pack csh_de 1.0.0
Meta tags, extended metatags 1.0.4
Top Content gst_topcontent 1.2.1
Page PHP Content page_php_content 1.0.1
RealURL: URLs like normal websites realurl 1.1.0
Indexed Search Engine indexed_search 2.1.3
Searchbox for Indexed Search Engine macina_searchbox 2.2.0

Ich werde vielleicht noch ein wenig herumexperimentieren, welche Extensions richtig viel Ressourcen fressen...

P.S.: Weiß jemand, wie man diese Apache Benchmark Tool abstellen kann? Macht ja keinen Sinn, dass später einfach jemand meinen Webserver mit diesem Tool überlasten kann. Stichwort: DoS

schmidtsmikey ·

Ähmm, und dann habe ich noch mal ne Frage zum Benchmark-Tool ab2 (ich verstehe es einfach nicht, zum verzweifeln). Meine jetzige Seite hat zu Spitzenzeiten 40.000 Req/Stunde, das wären ca. 11,1 Req/s (theoretisch). Wie müsste ich jetzt die Werte setzen, damit dieses realitätsnah nah ist:

ab2 -n 100 -c 11 http://tztztz ?

Was müsste dann als Ergebnis kommen? Request per second müsste größer als 11 sein oder?

woida ·

P.S.: Weiß jemand, wie man diese Apache Benchmark Tool abstellen kann? Macht ja keinen Sinn, dass später einfach jemand meinen Webserver mit diesem Tool überlasten kann. Stichwort: DoS

Du kannst per Firewall die Verbindungsaufbauten pro IP und Zeit begrenzen.