Jump to content
Froxlor Forum
  • 0

Idle timeout wird nicht übernommen


Question

Warum wird mein PHP-FPM idle timeout nicht übernommen?

In PHP Versionen ist 120s eingestellt.

In PHP Konfigurationen 300s, Überschreibe FPM-Daemon Einstellungen ist angehakt. Domain entsprechend zugeordnet.

Trotzdem wird es nicht übernommen. Es bleibt bei 120s.

Link to post
Share on other sites

21 answers to this question

Recommended Posts

  • 0

Dann scheint bei mir etwas nicht zu stimmen.

 

Im Moment sieht es so aus.

 

Unter PHP-FPM Versionen: 
Process Manager Control: dynamic
Idle-timeout: 120s

Unter PHP Konfigurationen die entsprechende PHP Version zugeordnet.
Überschreibe FPM-Daemon Einstellungen: Angehakt
Process Manager Control: ondemand
Idle-timeout: 30s

Im Vhost steht dennoch: FastCgiExternalServer -idle-timeout 120

Hier müssten nun doch die 30s stehen? Oder ist das eine andere Einstellung?

Link to post
Share on other sites
  • 0

Wird denn der pm (ondemand) wenigstens übernommen? ggfls. passt da was nicht und er fällt zurück auf die "parent" config

Link to post
Share on other sites
  • 0

Also im Dropdownfeld bleibt es auf "ondemand" eingestellt.

Ich habe eben testweise in PHP-Versionen den Idle-Timeout verändert und das wird in die Vhost übernommen.

 

Link to post
Share on other sites
  • 0
Just now, matsy said:

Also im Dropdownfeld bleibt es auf "ondemand" eingestellt.

ja dann stimmt ja offenbar was nicht?! Versuch es doch mal bitte zunächst mit exakt den gleichen PM einstellungen wie der parent und ändere nur die idle-time um auszuschließen das da aus einem anderen grund die sachen nicht gespeichert werden

Und nutze bitte auf jeden Fall die aktuellste froxlor version um auszuschließen das es sich um uralte probleme handelt die schon lange gefixed sind

Link to post
Share on other sites
  • 0

Nein, da habe ich dich missverstanden: Das Dropdownfeld zeigt korrekt das an, was ich einstelle.

Muss der parent auf etwas bestimmtem stehen?

Ich stelle jetzt einmal beides auf "ondemand" nur mit unterschiedlichen Idle-Timeout.

Link to post
Share on other sites
  • 0

....es gibt 0.10.19 .... also bitte erstmal updaten, nochmal probieren und wenns immer noch nicht geht schauen wir weiter

Link to post
Share on other sites
  • 0

Dann hast du wohl eine sehr alte debian version. Nutz doch einfach den Auto-Updater (sofern php-zip extension installiert ist solltest du das menü als admin links sehen)

Link to post
Share on other sites
  • 0

So ich habe gerade das Update gemacht. Folgende Situation:

1. Die Crons haben nicht mehr funktioniert. Obwohl ich im Syslog den Aufruf des Crons sehe, wurden keine Konfigs mehr neu erstellt. Ich habe das mit dem -force parameter nun ainmal manuell gemacht, da hat es funktioniert. Ob es nun wieder automatisch geht, muss man sehen.

2. Der Idle Timeout wird immer noch nicht übernommen.

Link to post
Share on other sites
  • 0

Kann nur wiederholen das es bei funktioniert. Mach doch bitte Mal Screenshots von den beiden Einstellungsseiten

Link to post
Share on other sites
  • 0

Vielleicht schaue ich auch falsch oder habe ein Verständnisproblem?

Ich sehe, dass unter /etc/php/7.0/fpm/pool.d conf-Dateien für die Domains liegen, in denen pm.process_idle_timeout auf die richtige Dauer vom child gesetzt ist.

In der entsprechenden vhost unter /etc/apache2/sites-enabled steht aber unter FastCgiExternalServer die falsche Zeit, nämlich die vom parent.

Ist es überhaupt richtig, dass in beiden die gleichen Sekunden stehen müssten?

 

Link to post
Share on other sites
  • 0

Ach im vhost...ja sag das doch gleich - müsst ich Mal schauen ob da ggfls nicht der korrekte wert genommen wird ja

Link to post
Share on other sites
  • 0
32 minutes ago, d00p said:

Ach im vhost...ja sag das doch gleich - müsst ich Mal schauen ob da ggfls nicht der korrekte wert genommen wird ja

Hab ich doch: 

 

Ja bitte, wäre nett, wenn du das überprüfen kannst. Wichtig wäre ja nicht, ob der Wert angezeigt wird, sondern ob er übernommen wird. Da in meinen Logs der Idle-Timeout steht, befürchte ich, dass das System den Wert nicht berücksichtigt.

 

Link to post
Share on other sites
  • 0

Jap, da liegt der Hund begraben, dort wird eine andere Funktion zum Auslesen der fpm-daemon-settings verwendet die die override-settings der php-config nicht berücksichtigt. Schau mal ob folgender Patch dein Problem löst:

diff --git a/lib/Froxlor/Cron/Http/Php/PhpInterface.php b/lib/Froxlor/Cron/Http/Php/PhpInterface.php
index 7d85cea8..ae57f5f9 100644
--- a/lib/Froxlor/Cron/Http/Php/PhpInterface.php
+++ b/lib/Froxlor/Cron/Http/Php/PhpInterface.php
@@ -108,6 +108,11 @@ class PhpInterface
                                $this->_php_configs_cache[$php_config_id]['fpm_settings'] = Database::pexecute_first($stmt, array(
                                        'id' => $this->_php_configs_cache[$php_config_id]['fpmsettingid']
                                ));
+                               // override fpm daemon settings if set in php-config
+                               if ($this->_php_configs_cache[$php_config_id]['override_fpmconfig'] == 1) {
+                                       $this->_php_configs_cache[$php_config_id]['fpm_settings']['limit_extensions'] = $this->_php_configs_cache[$php_config_id]['limit_extensions'];
+                                       $this->_php_configs_cache[$php_config_id]['fpm_settings']['idle_timeout'] = $this->_php_configs_cache[$php_config_id]['idle_timeout'];
+                               }
                        }
                }

 

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...