Amazon Linux 2 に cloudwatch agent をインストールして(yu_1985 さん、ありがとうございました)、メモリを監視しながら WordPress の操作をしました。

トップページや個別記事を見る時は大丈夫なのですが、管理画面に入って、例えば「サイトネットワーク管理 - ダッシュボード」などを選択すると、画面に Out of Memory が表示されます。

以下のようなメッセージが出ます。

Fatal error: Out of memory (allocated 2097152) (tried to allocate 20480 bytes) in /data/linming/wordpress/wp-includes/sodium_compat/src/Compat.php on line 2279

Fatal error: Out of memory (allocated 2097152) (tried to allocate 32768 bytes) in /data/linming/wordpress/wp-includes/version.php on line 1

エラーのでる箇所は様々ですが、どれも Fatal error: Out of memory です。

CloudWatch のメトリクスでメモリ使用率が 10-20% の時でもエラーが発生します。

CloudFront をかましているから正確にはどんな状況で発生するか調べきれてないですが、各ブログのダッシュボードには遷移できる時もあればできない時もあり、ひどい時は個別投稿へのリンクをクリックするとエラーになる時もあります。

MediaWiki でも、ページが表示されたり、500 エラーになったりします。

静的 html ファイルの表示は大丈夫です。

今はコンソールに潜れなくてバージョン等を調べれないのですが、

WordPress, MediaWiki, PHP, Apache ともに今年初頭のバージョンです。PHP, Apache は amazon-linux-extras でバージョンアップしました。

ダッシュボードに「5.4.1 にバージョンアップしましょう」と表示されるのですが、リンクをクリックすると Out of Memory です。

EC2 のインスタンスタイプは t2.micro です。

原因と対策法はなんでしょうか?

追記

/etc/php.ini を見たところ、memory_limit = 512M でした。

インスタンスを再起動して WordPress のバージョンアップをクリックしたところ、

Fatal error: Out of memory (allocated 31719424) (tried to allocate 32768 bytes) in /data/pocolog/wordpress/wp-content/plugins/amazon-polly/vendor/aws/aws-sdk-php/src/data/translate/2017-07-01/api-2.json.php on line 3

Fatal error: Out of memory (allocated 31719424) (tried to allocate 32768 bytes) in /data/pocolog/wordpress/wp-includes/pomo/streams.php on line 163

と表示されました。

31,719,424 byte = 31MB ですよね?

CloudWatch agent のメモリ使用率は 92.7% まで上がっていました。

PHP のバージョンは 7.1.33、Apache のバージョンは 2.4.34 です。

#wordpress

Amazon Linux 2 で WordPress などのアプリが Out of memory|teratail
3.00 GEEK