mertyrer
Goto Top

Wie konfiguriere ich mein FastCGI für einen Online Shop

Ich habe einen Online Shop für einen Klienten erstellt.
Nun habe ich das Problem, dass der Server sehr schnell ausgelastet wird und man ihn allein durch das spammen der F5 Taste lahmlegen kann.
Dabei hat der Server 32 GB und 8 Kerne, also sollte er eigentlich was aushalten.
Nur wird bei jedem Seitenaufruf ein PHP Prozess gestartet, der erst nach ein paar Sekunden geschlossen wird.

Hintergrunddaten.
32GB RAM Server
Auf Apache2 Basis, mit PHP FastCGI
Apache2:
Timeout 30
KeepAlive On
MaxKeepAliveRequests 500
KeepAliveTimeout 5
GracefulShutDownTimeout 3


PHP FASTCGI Settings:


FcgidIdleTimeout 40
FcgidProcessLifeTime 30
FcgidMaxProcesses 300
FcgidMaxProcessesPerClass 300
FcgidMinProcessesPerClass 3
FcgidConnectTimeout 30
FcgidIOTimeout 45
FcgidInitialEnv RAILS_ENV production
FcgidIdleScanInterval 10
FcgidSpawnScoreUpLimit 10
FcgidSpawnScore 1
FcgidTerminationScore 2
FcgidMaxRequestsPerProcess 10000

Content-Key: 299513

Url: https://administrator.de/contentid/299513

Printed on: May 21, 2024 at 02:05 o'clock

Member: wiesi200
wiesi200 Mar 19, 2016 at 07:23:21 (UTC)
Goto Top
Hallo,

ich würd mich bei der Gelegenheit mal vom Apache Trennen.
Dann schauen mit welcher PHP Version du arbeitest (eftl. ist auch HHVM interessant).
Wie sieht's mit Memcache oder so aus?
Member: maretz
maretz Mar 19, 2016 at 07:58:19 (UTC)
Goto Top
Und warum vom Apache trennen? Welchen Server würdest du denn empfehlen?

Allerdings: Ich würde zuerst immer mal in die Entwicklung schauen, meistens ist da eher das Problem als beim Server-Dienst. Alternativ auch mal schauen wieviele gleichzeitige Prozesse dein Apache aufbauen darf (und wieviel du brauchst). Wir nutzen z.B. den Apache für eine Anwendung bei denen auch mal 2000-3000 clients nahezu gleichzeitig darauf Zugreiffen (und das teils mit mehreren Requests da es verschiedene Funktionen gibt), das läuft ohne Probleme, der Server wird nicht mal warm dabei (und die Hardware ist erheblich kleiner als deine Kiste!)
Member: wiesi200
wiesi200 Mar 19, 2016 updated at 08:41:46 (UTC)
Goto Top
Ich arbeite z.b gerne mit Nginx. Apache ist grundsätzlich nicht mal so Ressourcen schonend
Member: StefanKittel
StefanKittel Mar 19, 2016 at 17:40:25 (UTC)
Goto Top
Hallo,

nginx ist schneller bei vielen kleinen Zugriffen.
Bei einem Online-Shop ist der Vorteil aber nur gering.

Viel wichtiger, finde ich, ist aber dass nginx eine stabiliere Konfiguration hat.
Hat aber auch Nachteile, dass apache flexibler ist durch seine htaccess...

Für die Performance viel wichtiger ist aber PHP und ein FPC (Full Page Cache).
Von welche Shop sprechen wir eigentlich?

PHP 7 mit PHP FPM.
Dazu Varnish als FPC.
Getrennter Web und DB-Server.
Redis als Object-Cache

Und viele Shops, besonders Magento, brauchen auch viel Rechenleistung.
Mit einem einzelnen Server kommt man da häufig nicht weit.

Viele Grüße

Stefan