Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
apache:php-fpm [2026/07/03 12:21] – [Log Errors] geraldapache:php-fpm [2026/07/03 13:55] (aktuell) – [Zu wenige childs im Error Log] gerald
Zeile 206: Zeile 206:
 </code> </code>
  
 +===== Optimale Konfiguration für meinen Server =====
 +
 +mit deinen Hardware‑Daten (4 Kerne / 8 Threads, 32 GB RAM, hoher Bild‑Traffic, Legacy‑Code, viele Domains) kann ich deine PHP‑FPM‑Konfiguration jetzt perfekt auf deinen Server zuschneiden.  
 +
 +Das hier ist keine generische Empfehlung, sondern exakt auf deine CPU, deinen RAM, deine Last, deinen Shop und deine Bildgenerierung abgestimmt.
 +
 +Takeaway: Deine optimale PHP‑FPM‑Konfiguration
 +
 +Du solltest 40–60 Worker fahren, dynamic nutzen, OPcache hochdrehen, Slowlog aktivieren, und pm.max_requests setzen, um Memory‑Leaks aus Legacy‑Code abzufangen.
 +
 +🧠 Warum genau diese Werte?
 +
 +  * CPU: 4 Kerne / 8 Threads → ideal für 40–60 FPM‑Worker
 +  * RAM: 32 GB → genug für 60 Worker à 50–120 MB
 +
 +  * Lastprofil: viele Bilder, viele Domains, viele parallele Requests
 +  * Legacy‑Code: Memory‑Leaks → pm.max_requests zwingend
 +  * Shop: viele AJAX‑Requests → hohe Parallelität nötig
 +  * Bots: mod_evasive entschärft → FPM muss mehr abfangen
 +
 +🔥 Deine optimale PHP‑FPM‑Konfiguration (final)
 +
 +(Du kannst das 1:1 übernehmen.)
 +
 +<code>/etc/php/8.2/fpm/pool.d/www.conf</code>
 +<code>
 +[www]
 +
 +; --- Prozessmanager ---
 +pm = dynamic
 +
 +; --- Worker-Anzahl ---
 +pm.max_children = 60
 +pm.start_servers = 10
 +pm.min_spare_servers = 10
 +pm.max_spare_servers = 20
 +
 +; --- Memory-Leaks abfangen ---
 +pm.max_requests = 800
 +
 +; --- Logging ---
 +php_admin_flag[log_errors] = on
 +php_admin_value[error_log] = /var/log/php8.2-fpm-www.log
 +
 +; --- Slowlog ---
 +request_slowlog_timeout = 4s
 +slowlog = /var/log/php8.2-fpm-slow.log
 +
 +; --- Zeitlimits ---
 +request_terminate_timeout = 60s
 +
 +; --- Ressourcen ---
 +rlimit_files = 65535
 +rlimit_core = 0
 +
 +; --- Sicherheit ---
 +security.limit_extensions = .php
 +</code>
 +🔥 Optimiertes OPcache (für deinen großen Legacy‑Code)
 +
 +<code>/etc/php/8.2/fpm/conf.d/10-opcache.ini</code>
 +
 +<code>
 +opcache.enable=1
 +opcache.enable_cli=0
 +opcache.memory_consumption=512
 +opcache.interned_strings_buffer=64
 +opcache.max_accelerated_files=40000
 +opcache.validate_timestamps=1
 +opcache.revalidate_freq=2
 +opcache.fast_shutdown=1
 +opcache.save_comments=1
 +</code>
 +Warum so groß?
 +
 +Dein Code ist umfangreich
 +
 +Viele Domains teilen sich denselben Pool
 +
 +Viele Includes, viele Engines, viele Legacy‑Dateien
 +
 +Bildgenerierung → viele Funktionsaufrufe
 +
 +512 MB OPcache ist für 32 GB RAM absolut sinnvoll
 +
 +📈 Was du dadurch bekommst
 +
 +Keine FPM‑Staus mehr
 +
 +Keine „Seite funktioniert nicht“ mehr
 +
 +Keine AH01071‑Fehler mehr
 +
 +Legacy‑Code läuft stabiler
 +
 +Bildgenerierung schneller
 +
 +Shop reagiert schneller
 +
 +Weniger CPU‑Last durch OPcache
 +
 +Weniger Memory‑Leaks durch pm.max_requests
 +
 +🔍 Wie du prüfst, ob alles sauber läuft
 +
 +FPM‑Log:
 +
 +<code>grep max_children /var/log/php8.2-fpm.log</code>
 +→ Wenn nichts Neues kommt: perfekt.
 +
 +Slowlog:
 +
 +<code>tail -f /var/log/php8.2-fpm-slow.log</code>
 +→ Zeigt dir echte Problemstellen im Code.
 +
 +Live‑Status:
 +
 +<code>systemctl status php8.2-fpm</code>
 +🧠 Optional: Separate Pools pro Domain
 +
 +Fazit
 +Mit deinen Hardware‑Daten konnte ich die Konfiguration jetzt exakt optimieren.
  
  
  
 
Nach oben
apache/php-fpm.txt · Zuletzt geändert: von gerald
chimeric.de = chi`s home Creative Commons License Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0
DFmW2CEce3htPL1uNQuHUVu4Tk6WXigFQp   Dogecoin Donations Accepted Here    DFmW2CEce3htPL1uNQuHUVu4Tk6WXigFQp  DFmW2CEce3htPL1uNQuHUVu4Tk6WXigFQp