Apache Umgebung (php, sql, fastcgi...)

Apache, Lighttpd, nginx, Cherokee
Anonymous

Apache Umgebung (php, sql, fastcgi...)

Post by Anonymous »

Hallo,

Ich bin dabei eine größere Webserver Umgebung zu bauen und bin dabei auf das FastCGI-Tutorial gestossen.

Dieses ist wirklich sehr gut erklärt.

Meine Frage ist nun, ob sich diese Lösung auf für ein größeres Umfeld eignet und wie es von der Performance her aussieht?

Dabei sind auf zwei Server ca. 200 - 500 Webs aufgeteilt. Die Anforderungen an die Resourcen sind hier bei jedem Web unterschiedlich. (Soll hier für jedes Web eigene FCGI-Kinder definiert werden?)
Damit ist nicht so langweilig wird, muss ich auch zwei unterschiedliche PHP-Versionen verwenden (4.3/4.4 + 5.1)

Hat jemand von Euch Erfahrung mit Umgebungen dieser Größenordnung, oder event. mit noch größeren Umgebungen?

Vielen Dank für Euer Feedback
lg
Tomi
tha_specializt
Posts: 8
Joined: 2006-08-15 21:13

Re: Apache Umgebung (php, sql, fastcgi...)

Post by tha_specializt »

200 - 500 Websites pro Server??? Das ist eine totale Überlastung, es sei denn du hast unbezahlbare Hightech-Hardware.

FCGI ist sehr, sehr schnell. Ja, es spawnt etliche Kinder. Ich würde PHP selbst kompilieren, das ermöglicht eine optimale Anpassung & Kontrolle der ganzen Geschichte. Aber ob das alles für ein Umfeld DIESER Grössenordnung ausgelegt ist, wage ich zu bezweifeln... Da wirste mit Sicherheit Probleme bekommen

Du wirst hier mit Sicherheit Leute finden, die ähnlich viele Dinge unter den Fittichen haben, aber garantiert niemanden der dies auf so wenige Server konzentriert! Das ist purer Selbstmord... jeder fähige Admin wird das anders machen

Übrigens wirst du mit der Bezeichnung "Web" für "Websites" nicht besonders weit kommen, externes Gelächter inklusive :-D.
Haste mal ein paar Webs? :arrow: Äh... Gibbet nur eins, und das kriegste durchs Modem!
Anonymous

Re: Apache Umgebung (php, sql, fastcgi...)

Post by Anonymous »

Hallo,

danke erstmal:

web ist in meinem sprachgerbauch ein übliches (umgangssprachliches) wort im zusammenhang mit websites. ich komme aber auch nicht aus deutschland.

ich habe vergessen zu erwähnen, dass a.) die hardware natürlich high end ist und b.) auf 2 physikalischen servern sich einige apache-instanzen tummeln, die für einie web(sites) zuständig sind, wobei es nicht bei 2 servern bleiben wird.
(wieder umgangssprachlich: server = phys. maschine)

c.) darfst du nicht vergessen, dass manager dass ganze berechnen müssen... wenn jede webseite gleichzeitig von 100 clients aufgerufen wird, dann steht das ding natürlich und eswird zu problemen kommen.... aber ähnlich wie es bei flügen zu überbuchungen kommt, so wird auch hier nicht davon ausgegangen, dass alle webseiten gleichzeitig serviciert werden müssen.

ob das die richtige vorgehensweise ist, wage ich zu bezweifeln. aber ich bezahle die maschinen nicht.

also stelle ich meine frage nochmal anders :-)
Apache hat einige Webseiten. Eine Maschine hat mehrere Apache Instanzen. Wenn jetzt für jede Webseite einige fcgi-Prozesse gestartet werden, bekommt dann die Maschine nicht im Vorhinein schon Probleme mit dem Speicher, oder sollte das schon in Ordnung gehen?

lg
tomi
tha_specializt
Posts: 8
Joined: 2006-08-15 21:13

Re: Apache Umgebung (php, sql, fastcgi...)

Post by tha_specializt »

Das kannst du selbst festlegen, indem du die Anzahl der fcgi-Kinder vorgibst:

PHP_FCGI_CHILDREN=DEINEZAHL
export PHP_FGCI_CHILDREN

danach alle Webserver neustarten. Standardmässig sind 8 Childs am laufen, und diese verursachen nur dann Systemlast wenn Clients darauf zugreifen (!)
djcrackman
Posts: 207
Joined: 2005-06-02 11:58

Re: Apache Umgebung (php, sql, fastcgi...)

Post by djcrackman »

200 - 500 Websites pro Server???
Und weiter? Nicht jeder hat einen 25€ Rootie der mit sowas überlastet ist. Wir hosten derzeit auf einem Athlon FX System bis zu 5.000 User-Directories. Zusätzlich verarbeitet das MySQL-System 25.000 Datenbanken -> die Systemload ist durchschnittlich bei 2.5 - 3.

Also: es ist alles eine Frage der Relation.
r. u. serious
Posts: 88
Joined: 2006-06-10 14:17

Re: Apache Umgebung (php, sql, fastcgi...)

Post by r. u. serious »

Wie ist das eigentlich mit Apache und fcgi, ich hatte früher immer gehört, dass es etwas steifmütterlich behandelt wird und dementsprechend nicht so prickelnd läuft. Sehe FCGI daher immer bei anderen Webservern die nicht für jede Programmiersprache ein Modul schreiben/pflegen könen/wollen.

FCGI ist jedenfalls nicht langsamer als Apache+mod_php (AFAIK), ob es unbedingt schneller ist... .
Der Vorteil dürfte einerseits bei der Flexibilität mit den Rechten liegen*. Und/Oder andererseits beim Speicherverbrauch - jedenfalls dann wenn dynamische und statische Inhalte vom selben Webserver bedient werden (denn dann bedienen die dickeren Apacheprozesse ja auch die statischen Requests mit).


* Falls jedes "web" mit anderem Benutzer laufen soll, dürfest du bei x hunderten web natürlich Unmengen mehr an Speicher brauchen, da ja für jedes web eine eigene PHP Instanz laufen würde, wiederum mit ein paar Childs. da kommt schnell das eine oder andere GB zusammen. Gerade wenn es viele webs und alle mit sehr wenig Traffic ist, macht das wohl nur wenig Sinn, wenn RAM ein Flaschenhals ist.
rootsvr
Posts: 538
Joined: 2005-09-02 11:12

Re: Apache Umgebung (php, sql, fastcgi...)

Post by rootsvr »

In letzterem Fall startet man halt für die kleineren Webinstanzen nur wenige Fcgi Childs.

Der größte Vorteil ist imho die Möglichkeit PHPfcgi mit SuExec zu nutzen, in wie weit sich das von mod_suphp abhebt weiß ich allerdings nicht.
Roger Wilco
Posts: 5923
Joined: 2004-05-23 12:53

Re: Apache Umgebung (php, sql, fastcgi...)

Post by Roger Wilco »

rootsvr wrote:Der größte Vorteil ist imho die Möglichkeit PHPfcgi mit SuExec zu nutzen, in wie weit sich das von mod_suphp abhebt weiß ich allerdings nicht.
Durch Speicherpersistenz. SuPHP entspricht im Wesentlichen mod_cgi+mod_suexec, d. h. es wird für jeden Request ein neuer Prozess gestartet.
tha_specializt
Posts: 8
Joined: 2006-08-15 21:13

Re: Apache Umgebung (php, sql, fastcgi...)

Post by tha_specializt »

djcrackman wrote:
200 - 500 Websites pro Server???
Und weiter? Nicht jeder hat einen 25€ Rootie der mit sowas überlastet ist. Wir hosten derzeit auf einem Athlon FX System bis zu 5.000 User-Directories. Zusätzlich verarbeitet das MySQL-System 25.000 Datenbanken -> die Systemload ist durchschnittlich bei 2.5 - 3.

Also: es ist alles eine Frage der Relation.
Mach ma nen Ping auf diesen Server.. wenn er niedriger als 150 ist hast du gerade die Gesetze der Physik gebrochen 8O . Ich habe übrigens auch keinen 25€-Server, und trotzdem is das ned möglich.. Ebenfalls Athlon FX mit 1 GB RAM, 320 GB Plattenspeicher usw usw... alles von feinsten (obwohl die RAM mehr sein könnten)

Und die 25000 bei MySQL klingt auch mehr als unwahrscheinlich, entweder sind alle Websites und Datenbanken praktisch leer oder........ Ich kann dir Systeme zeigen, die mit ca. 10 Datenbanken bereits überfordert sind (trotz guter Hardware)

:arrow: Wenn du ca. 0 Aktivität auf den Sites und den Datenbanken hast dann is das natürlich was anderes...
captaincrunch
Userprojekt
Userprojekt
Posts: 7066
Joined: 2002-10-09 14:30
Location: Dorsten

Re: Apache Umgebung (php, sql, fastcgi...)

Post by captaincrunch »

Mach ma nen Ping auf diesen Server.. wenn er niedriger als 150 ist hast du gerade die Gesetze der Physik gebrochen
1. 150 Milimeter? 150 nackte Friseusen?
2. Was willst du uns grundsätzlich damit sagen? Was hat ein "ping" mit der Leistungsfähigkeit eines einzelnen Systems zu tun?
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
djcrackman
Posts: 207
Joined: 2005-06-02 11:58

Re: Apache Umgebung (php, sql, fastcgi...)

Post by djcrackman »

@tha_specializt

Code: Select all

...>tracert 85.124.188.36

Routenverfolgung zu buzz.uttx.net [85.124.188.36]  über maximal 30 Abschnitte:

  1    <1 ms    <1 ms    <1 ms  10.0.0.254
  2     7 ms     7 ms     7 ms  172.25.46.23
  3     8 ms     8 ms     7 ms  schl-vl-00-003.josemic.klgf.inode.at [62.99.170.41]
  4    55 ms    41 ms    99 ms  vie2-vl-00-981.shuttle.vien.inode.at [62.99.170.105]
  5    11 ms    11 ms    11 ms  self-gb-02-002.shuttle.vien.inode.at [62.99.171.66]
  6    11 ms    11 ms    11 ms  buzz.uttx.org [85.124.188.36]

Ablaufverfolgung beendet.

Code: Select all

# uptime
 20:31:08 up 16 days, 22:50,  1 user,  load average: 1.53, 1.44, 1.37

Code: Select all

 # cat /proc/cpuinfo
processor       : 0
vendor_id       : AuthenticAMD
cpu family      : 15
model           : 7
model name      : AMD Athlon(tm) 64 FX-53 Processor
stepping        : 10
cpu MHz         : 2388.164
cache size      : 1024 KB
[...]
bogomips        : 4788.88

Code: Select all

# free -m
             total       used       free     shared    buffers     cached
Mem:          3533       3265        267          0         98       2152
-/+ buffers/cache:       1013       2519
Swap:         3922          0       3922

Code: Select all

# ps auxf
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
[...]
mysql    23492  0.0  5.1 1201348 185552 ?      S    Aug08   1:22 /opt/mysql_max_5.0.22_i686/bin/mysqld --basedir=/opt/mysql_max_
[...]
root     12472  0.0  1.2  59420 46148 ?        Ss   Aug13   2:43 /opt/apache_1.3.37_php4/bin/httpd
[...]
root     12609  0.1  1.7  79864 64776 ?        Ss   Aug13   5:54 /opt/apache_1.3.37_php5/bin/httpd
[...]
root     14003  0.0  0.8  44456 30208 ?        Ss   Aug15   1:04 /opt/apache_1.3.37_php504/bin/httpd
[...]
root     14994  0.0  0.2  22084  8176 ?        Ss   Aug15   0:00 /opt/apache_1.3.37_sys/bin/httpd
[...]

Code: Select all

mysql> show databases;
+-----------------------------+
| Database                    |
+-----------------------------+
| [...]                       |
+-----------------------------+
25823 rows in set (0.54 sec)

mysql>

Code: Select all

# Abfragestatistik: Seit seinem Start wurden 22.196.857 Abfragen an diesen MySQL-Server gesandt.
 Insgesamt  	 ø pro Stunde  	 ø pro Minute  	 ø pro Sekunde 
 22.196.857  	 110.315,19  	 1.838,59  	 30,64 
Der mysqld hat allerdings erst eine Uptime von 8 Tagen. Noch Fragen?
elch_mg
Posts: 302
Joined: 2006-01-23 19:14
Location: 41063

Re: Apache Umgebung (php, sql, fastcgi...)

Post by elch_mg »

Hoffen wir, dass du durch diese Nachforschung jetzt keinen Herzinfarkt bei ihm verursachst...
thorsten
Posts: 561
Joined: 2003-02-01 13:14
Location: Fuldatal

Re: Apache Umgebung (php, sql, fastcgi...)

Post by thorsten »

Das glaube ich nicht, der Name kommt mir aus anderen Foren bekannt vor und da hat er ordentlich getrollt :lol:

EDIT: Genau, im debianforum.de habe ich von ihm gelesen :P
djcrackman
Posts: 207
Joined: 2005-06-02 11:58

Re: Apache Umgebung (php, sql, fastcgi...)

Post by djcrackman »

[ot]Mir gehts es mittlerweile schwer am Keks, dass jeder sich selbst als Maßstab sieht. Auch wenn einer einen 100€ Rootie hat, so wird er damit nie Leistungsstiefen erreichen, welche andere mit selbst gebauten Servern erreichen. Selbst auf einem 50€ Rootie sollt man 500-1000 Kunden unterbringen können, ohne dass die Performance im Sumpf verschwindet. Zumindest bin ich das von unseren (österreichischen) Rootserver-Anbietern so gewohnt. Da ist der kleinste Rootie ein Celeron mit 3Ghz und 512MB Ram -> mit entsprechendem Softwaretuning kriegt man da 500 Kunden rauf -> und da merkt keiner von denen etwas, dass da 499 andere drauf sind.[/ot]