Frage Hohe Speicherauslastung in ExpressionEngine-Vorlagen


Bei der Installation von ExpressionEngine v2.5.3 habe ich ein Problem mit der Speicherauslastung, die ich als hohe Speicherauslastung erachte. Dies ist ein aktuelles EE1-EE2-Upgrade, wenn dies einen Unterschied macht.

Eine leere Vorlage in diesem Projekt benötigt 10 MB Speicher. Ich habe in einem anderen v2.5.3-Projekt getestet und eine leere Seite verwendet 2 MB Speicher. Ich sehe 30 + MB Nutzung auf normalen Vorlagen und häufig verliert der Browser seine Verbindung zum Server.

Ist ein Addon für diesen erhöhten Speicherverbrauch verantwortlich? Was ist der beste Weg, dies rückwärts zu verfolgen?

Die Installation läuft nach diesem Upgrade definitiv ab.


SCHABLONENVORBEREITUNG

(0.000011 / 9.01MB) - Begin Template Processing -
(0.000172 / 9.01MB) URI: test
(0.000185 / 9.01MB) Path.php Template: /
(0.000199 / 9.01MB) Retrieving Template
(0.000210 / 9.01MB) Parsing Template URI
(0.002112 / 9.02MB) Template Group Found: test
(0.002166 / 9.02MB) Retrieving Template from Database: test/index
(0.003599 / 9.02MB) Template Found
(0.003690 / 9.02MB) Template Type: webpage
(0.003711 / 9.02MB) Parsing Site Variables
(0.003767 / 9.02MB) Snippets (Keys): structure:is:page|structure:is:listing|structure:is:listing:parent|structure:page:entry_id|structure:page:template_id|structure:page:title|structure:page:slug|structure:page:uri|structure:page:url|structure:page:channel|structure:page:channel_short_name|structure:parent:entry_id|structure:parent:title|structure:parent:slug|structure:parent:uri|structure:parent:url|structure:parent:child_ids|structure:parent:channel|structure:parent:channel_short_name|structure:top:entry_id|structure:top:title|structure:top:slug|structure:top:uri|structure:top:url|structure:child_listing:channel_id|structure:child_listing:short_name|structure:freebie:entry_id|structure:child_ids|structure:sibling_ids|structure_1|structure_2|structure_3|structure_4|structure_5|structure_6|structure_7|structure_8|structure_9|structure_10|structure_last_segment|site_id|site_label|site_short_name|last_segment
(0.003784 / 9.02MB) Snippets (Values): FALSE||||||||||||||||||||||test|/test/|/test/||||||test||||||||||test|1|Ranch|default_site|test
(0.003926 / 9.02MB) Parse Date Format String Constants
(0.003943 / 9.02MB) Parse Current Time Variables
(0.003968 / 9.02MB) Parsing Segment, Embed, and Global Vars Conditionals
(0.007698 / 9.11MB) - Beginning Tag Processing -
(0.007719 / 9.11MB) - End Tag Processing -
(0.008645 / 9.12MB) Calling Extension Class/Method: Structure_ext/template_post_parse
(0.008789 / 9.11MB) - End Template Processing -
(0.008803 / 9.11MB) Parse Global Variables
(0.009574 / 9.11MB) Template Parsing Finished
Memory Usage: 10,163,144 bytes

5
2017-10-28 17:34


Ursprung


Antworten:


Verschiedene Versionen von PHP, und verschiedene Arten der Implementierung von PHP, zB: mod_php vs. fastcgi, zum Beispiel, zusammen mit verschiedenen Funktionen, die in PHP selbst aktiviert sind, können zu unterschiedlichen Speicherauslastungen führen.

Versuchen Sie den folgenden Code, um die Speicherauslastung für die gerade Ausführung von PHP zu testen, anstatt in der Template-Engine von EE.

<?php
    function echo_memory_usage() {
        $mem_usage = memory_get_usage(true);

        if ($mem_usage < 1024)
            echo $mem_usage." bytes";
        elseif ($mem_usage < 1048576)
            echo round($mem_usage/1024,2)." kilobytes";
        else
            echo round($mem_usage/1048576,2)." megabytes";

        echo "<br/>";
    }
?>

9
2017-10-28 18:44



Mit dem Graphite-Add-On können Sie schnell Engpässe feststellen:

https://github.com/joelbradbury/Graphite.ee_addon

Ich finde Graphite selbst kann Ihre Seiten wirklich verlangsamen, aber wenn Sie es laden können, ist es großartig.


3
2017-10-28 17:59



Der Start mit einer leeren Vorlage und aktiviertem Template-Debugging ist ein guter Anfang und eliminiert die Wahrscheinlichkeit, dass Tags den hohen Speicherverbrauch verursachen.

Gibt es etwas anderes als Einstellung oder Add-On-Weight zwischen 2Mb-Installation und Ihre aktuelle 10Mb-Installation? Wenn Template-Tags als Ursache beseitigt wurden, sollten Sie nach Add-Ons suchen, bei denen möglicherweise Overhead hinzugefügt wird, insbesondere bei Erweiterungen. Fühlen Sie sich frei, die Add-ons zu posten, die Sie hier installiert haben.

Wenn Sie auch das Tracking und Speichern von Vorlagen als Dateien deaktivieren, sparen Sie möglicherweise Speicherplatz.


3
2017-10-28 18:48



Es scheint die Antwort auf meine Frage ist ~ 9MB ist eine normale Startlevel für eine leere Vorlage auf einer EE-Installation.

Die Vorlage, die bei 2 MB beginnt, befindet sich auf einem EngineHosting VPS / VSC-Konto mit aktivierter APC-Bytecode-Zwischenspeicherung, daher der Unterschied in den Zahlen.


2
2017-10-30 16:12