Posting in the Magento forums has been disabled pending the implementation of a new and improved forum solution which should better serve the community.

For new questions please post at magento.stackexchange.com, the community-run support site for the Magento community. We will be providing updates on the new forum solution soon. For questions or concerns please email community@magento.com.

Magento Forum

Magento 1.5 mit Nginx reverse Proxy für Apache
 
brandeer
Sr. Member
 
Avatar
Total Posts:  133
Joined:  2009-03-18
switzerland
 

Hi,

Ich habe einen nginx als reverse proxy für meine Magento 1.5 Installation mit Apache 2.2. / PHP 5.3 suhosin im Einsatz.

Leider bringt mir das Ganze noch keine wirkliche Performance Verbesserung gemäss apachebenchmark (ab).
Dies ist auch logisch, da ich das proxy_caching mit der folgenden config deaktivieren musste, da es für Probleme mit den Sessions sorgte:

proxy_cache_path                /var/www/tmpfslevels=1:2 keys_zone=global:128M max_size=1G inactive=1440m;
proxy_temp_path                 /var/www/tmpfs/tmp/;
proxy_cache_key                 $scheme$host$request_uri;
proxy_cache_use_stale           error timeout updating invalid_header http_500 http_502 http_503 http_504;
proxy_cache                     global;

Hat jemand nginx als reverse Proxy für Magento 1.5 im Einsatz und hat eine passende config und ein paar Tipps für mich?

Greets

 
Magento Community Magento Community
Magento Community
Magento Community
 
brandeer
Sr. Member
 
Avatar
Total Posts:  133
Joined:  2009-03-18
switzerland
 

Hi

Hatte heute endlich wieder Zeit, mich um das Thema zu kümmern.

Die Produktseiten werden nun massiv schneller ausgeliefert - 47Req. / sek an Stelle von vorher ca. 7req/sek

Allerdings bin ich mit dem Resultat noch nicht ganz zufrieden, da der Nginx Server load mässig schlummert und auch der Apache Server quasi keine Last hat - da müssten doch noch mehr Requests möglich sein.

Gestestet mit: ab -c 15 -t 60 http://www.brandeer.ch/

Total transferred:  23502080 bytes
HTML transferred:  22808508 bytes
Requests per second:  47.70 [#/sec] (mean)
Time per request:  628.916 [ms] (mean)
Time per request:  20.964 [ms] (mean, across all concurrent requests)
Transfer rate:  382.26 [Kbytes/sec] received

Nginx cached die statischen Files im Memory und komprimiert die Bilder etc gzip.
Magento läuft mit Apache 2.2 und dem Caching und Session Handling per memcached.

Ideen?

Greets

 
Magento Community Magento Community
Magento Community
Magento Community
 
diglin
Sr. Member
 
Avatar
Total Posts:  93
Joined:  2008-12-29
Zurich - Switzerland
 

This kind of conception is wrong. I mean you should not use Apache behind a nginx proxy to hope to get better performance. When people do that is more to get a compatibility with the existing installation or support .htaccess or have Apache which serves PHP script and Nginx responsible to deliver static content.

For better performance use Nginx + PHP-FPM or APACHE MPM EVENT + PHP-FPM or Vanish + APACHE MPM EVENT + PHP-FPM

Nginx is just good to deliver static content, the rest of your problem to deliver PHP script response won’t be resolved cause of the PHP process and it will stay “slow” with any configuration if you don’t use Opcode like memcached or APC or a clean code.

The solution with Apache MPM Event/worker and PHP-FPM will just help you to save some hardware resource but without huge performance.

Regards

 
Magento Community Magento Community
Magento Community
Magento Community
 
kiezshopper
Jr. Member
 
Total Posts:  25
Joined:  2011-01-20
Berlin
 

Hi,

sorry, dass ich dieses alte Thema rausgrabe, aber wir haben gerade auch einen Serverwechsel + Optimierung vor uns.

Unser aktuelles Setup sieht momentan so aus

Apache 2.2 + mod_fcgid + PHP5.4 + APC und NGINX 1.5.7 mit PageSpeed Build. Der Server hat 16 GB Ram und ist ein i7-3770 CPU @ 3.40GHz.

Die aktuelle nginx proxy.conf sieht so aus:

proxy_redirect          off;
proxy_set_header        Host            $host;
proxy_set_header        X-Real-IP       $remote_addr;
proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
client_header_timeout    900;
client_max_body_size    20m;
client_body_buffer_size 256k;
client_body_timeout        900;
send_timeout            900;
proxy_connect_timeout   900;
proxy_send_timeout      900;
proxy_read_timeout      900;
proxy_buffers           32 8k;

proxy_cache_valid 200 302 60m;
proxy_cache_valid 404 1m;

proxy_cache_path /var/tmpfs/cachelevels=1:2 keys_zone=global:128M max_size=1G inactive=1440m;
proxy_temp_path /var/tmpfs/tmp/;
proxy_cache_key $scheme$host$request_uri;
proxy_cache_use_stale error timeout updating invalid_header http_500 http_502 http_503 http_504;
proxy_cache global;

und funktioniert einwandfrei (nicht wundern über die hohen timeout Zeiten, wir nutzen die webservices und die laufen manchmal ganz schön lange :-( )

Leider komme ich nur auf folgende Werte

Total transferred:      49020603 bytes
HTML transferred
:       48515643 bytes
Requests per second
:    21.89 [#/sec] (mean)
Time per request:       685.256 [ms] (mean)
Time per request:       45.684 [ms] (meanacross all concurrent requests)
Transfer rate:          797.48 [Kbytes/sec] received

Wie sieht denn deine Serverkonfikuration aus, also mit welche PHP, NGINX Version läuft dein Server und wie ist dieser hardwaretechnisch ausgerüstet. Welche \"Stellschrauben\" hast du gedreht, dass du so flotte Ergebnisse bekommst? Ich würde mich über einen Austausch sehr freuen, gerne auch per PN.

 
Magento Community Magento Community
Magento Community
Magento Community
Magento Community
Magento Community
Back to top