5

ExpressionEngine v2.5.3 のインストールで、メモリ使用量が多いと思われる問題が発生しています。違いがある場合、これは最近の EE1 - EE2 アップグレードです。

このプロジェクトの空のテンプレートは、10MB のメモリを使用します。別の v2.5.3 プロジェクトでテストしたところ、2MB のメモリを使用している空のページがありました。通常のテンプレートで 30 MB 以上の使用量が見られ、ブラウザがサーバーへの接続を頻繁に失います。

このメモリ使用量の増加の原因はアドオンですか? これを逆方向に追跡する最良の方法は何ですか?

このアップグレード後、インストールは確実に機能しています。


テンプレートのデバッグ

(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
4

4 に答える 4

9

phpのさまざまなバージョン、およびphpを実装するさまざまな方法(たとえば、mod_phpとfastcgi)、およびphp自体で有効になっているさまざまな関数は、さまざまなレベルのメモリ使用量につながる可能性があります。

EEのテンプレートエンジンではなく、実行されているphpだけのメモリ使用量をテストするには、以下のコードを試してください。

<?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/>";
    }
?>
于 2012-10-28T18:44:04.963 に答える
3

Graphite アドオンを使用すると、ボトルネックをすばやく特定できます。

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

グラファイト自体がページの速度を非常に遅くする可能性があることがわかりましたが、問題なくロードできれば最高です.

于 2012-10-28T17:59:48.317 に答える
3

テンプレートのデバッグをオンにして、空のテンプレートから開始するのが適切なスタートであり、タグがメモリ使用量の増加を引き起こす可能性を排除します。

2Mb 使用量のインストールと現在の 10Mb 使用量のインストールの間で、何か異なる設定またはアドオンはありますか? 原因としてテンプレート タグが削除されたため、オーバーヘッドを追加している可能性のあるアドオン (特に拡張機能) を調べる必要がある場合があります。ここにインストールしたアドオンを自由に投稿してください。

また、追跡を無効にしてテンプレートをファイルとして保存すると、メモリを節約できる場合があります。

于 2012-10-28T18:48:00.023 に答える
2

私の質問に対する答えは、EEインストールでの空のテンプレートの通常の開始レベルである〜9MBであるようです。

2MBで始まるテンプレートは、APCバイトコードキャッシングが有効になっているEngineHosting VPS / VSCアカウント上にあるため、数に違いがあります。

于 2012-10-30T16:12:58.713 に答える