Wenn dies dein erster Besuch hier ist, lies bitte zuerst die Hilfe - Häufig gestellte Fragen durch. Du musst dich vermutlich registrieren, bevor du Beiträge verfassen kannst. Klicke oben auf 'Registrieren', um den Registrierungsprozess zu starten. Du kannst auch jetzt schon Beiträge lesen. Suche dir einfach das Forum aus, das dich am meisten interessiert.
jonofe
André, probier das ganze mal bitte mit einem
PHP-Code:
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,0);
dabei...
EDIT: PHP's curl.so ist gegen die libcurl gelinked, also werden beide PHP-Versionen dieselbe Curl-Library benutzen... (kann man aber mit "ldd /irgendein/php-library/pfad/curl.so" rausfinden)
Zuletzt geändert von wintermute; 19.01.2018, 16:46.
Es ist aus meiner Sicht ein Memory Leak in curl. Wenn ein hochfrequenter curl daemon LBS läuft, dann wird Memory allokiert und nicht wieder freigegeben.
Wenn es hingegen kein daemon LBS ist, dann bleibt das Ergebnis der curl-Abfrage lediglich im Linux Filesystem Cache und kann mit
Code:
sync && echo 3 > /proc/sys/vm/drop_caches
wieder freigegeben werden. Wobei die eigentlich nicht notwendig ist, wenn das passiert automatisch wenn ein anderen Prozess Speicher braucht. Wenn man es nicht explizit machen, dann führt das halt auch zu einem roten Memory Balken in EDOMI.
Ich habe das mal mit einem Skript verifiziert, welches eine curl Anfrage in einer Endlosschleife ausführt. Dabei ist zu sehen, dass auf dem EDOMI Server mit php 5.3.3 immer mehr Speicher allokiert wird und man ihn eben nicht mit dem o.g. Statement zur Löschung des Caches wieder als frei angezeigt bekommt. Die Freigabe erfolgt erst beim Beenden des Skripts.
Wenn ich gleiches Skript auf meinem Ubuntu 17.10 Desktop laufen lassen, bleibt der Memory-Footprint des Prozesses stabil.
Interessant ist allerdings, dass ich dasselbe Memory Problem allerdings auch mit php7 auf dem EDOMI Server habe. Ich bin nicht sicher woran das liegt? Ggf. muss man dort für ein per scl installiertes PHP7 noch php-curl nachinstallieren, da vielleicht sonst das curl von php5.3.3 verwendet wird. Würde mich zwar überraschen, wenn das so ablaufen würde, aber vielleicht weiss Michael ( wintermute ) ja mehr dazu.
Das Monitoring des Speicherverbauchs ist relativ einfach mit 'top' möglich. Hier ist Spalte RES für den entsprechenden php Prozess zu beobachten. Durch drücken von 'c' kann man sich in der top-Ansicht die komplette Kommandozeile einblenden lassen, so dass man den richtigen Prozess identifizieren kann.
Du hast seit Monaten Edomi nicht neu aktiviert. Kaum zu glauben.
Und der LBS Abfragebaustein hat wahrscheinlich auch eine sehr niiedrige Frequenz. Hatte ich auch seit Anfang an in Benutzung und war nicht auffällig, erst mit dem Alexa Baustein wurde es richtig heftig.
Ich mach zu dem Thema mal einen eigenen Thread auf, da mich eure Erfahrungen interessieren:
Ich habe jetzt wochenlang die diversen Logikseiten in meinen System deaktiviert, weil ich massiv Schwierigkeiten mit
- Speicherverbrauch
- KNX Verbindungsabbrüchen
hatte.
Aktuell ist mein System wieder stabil bei ca. 11% Speicherverbrauch und ohne KNX-Abbrüche.
Nicht verwendet werden aktuell:
UNIFI-Bausteine
Alexa-Bausteine
Abfragen zu LBS updates
Sobald ich hier was aktiviere geht es wieder los (mehr oder weniger schnell, je nach Aufruffrequenz)
All diese Bausteine verwenden curl Aufrufe in php. Ich bin der Meinung hier liegt was im Argen.
Evtl. mag der ein oder andere mal prüfen, ob er meine Vermutungen erhärten kann. Evtl. kennt auch jemand einen Umweg um curl nicht zu benutzen?
Wir verarbeiten personenbezogene Daten über die Nutzer unserer Website mithilfe von Cookies und anderen Technologien, um unsere Dienste bereitzustellen. Weitere Informationen findest Du in unserer Datenschutzerklärung.
Indem Du unten auf "ICH stimme zu" klickst, stimmst Du unserer Datenschutzerklärung und unseren persönlichen Datenverarbeitungs- und Cookie-Praktiken zu, wie darin beschrieben. Du erkennst außerdem an, dass dieses Forum möglicherweise außerhalb Deines Landes gehostet wird und bist damit einverstanden, dass Deine Daten in dem Land, in dem dieses Forum gehostet wird, gesammelt, gespeichert und verarbeitet werden.
Einen Kommentar schreiben: