最新の1GBのメモリを備えたインスタンスを使用していますEC2
。私は最新のwithを使用して画像をアップロードして変換するためにwithを使用しています。私の設定:t4g.micro
arm64
ubuntu
nginx
PHP-FPM
image.intervention
GD
PHP_FPM
pm = static
pm.max_children = 1
pm.max_requests = 300
そしてphp.ini:
max_execution_time = 5
memory_limit = 100M
opcache.enable = 1
opcache.jit_buffer_size = 50M
opcache.jit = 1255
しかし、私はまだ私のサイトから時々次のメッセージを受け取りますsyslog
。
Out of memory: Killed process 510 (php-fpm8.3) total-vm:490452kB, anon-rss:273404kB, file-rss:2944kB, shmem-rss:3840kB, UID:1001 pgtables:708kB oom_score_adj:0
Out of memory: Killed process 510 (php-fpm8.3) total-vm:499780kB, anon-rss:282508kB, file-rss:2944kB, shmem-rss:3968kB, UID:1001 pgtables:720kB oom_score_adj:0
Out of memory: Killed process 20481 (php-fpm8.3) total-vm:495800kB, anon-rss:272472kB, file-rss:2944kB, shmem-rss:3456kB, UID:1001 pgtables:708kB oom_score_adj:0
Out of memory: Killed process 24725 (php-fpm8.3) total-vm:465556kB, anon-rss:247920kB, file-rss:2944kB, shmem-rss:1664kB, UID:1001 pgtables:648kB oom_score_adj:0
Out of memory: Killed process 24732 (php-fpm8.3) total-vm:458888kB, anon-rss:240892kB, file-rss:2816kB, shmem-rss:3456kB, UID:1001 pgtables:624kB oom_score_adj:0
Out of memory: Killed process 24739 (php-fpm8.3) total-vm:458280kB, anon-rss:240372kB, file-rss:2816kB, shmem-rss:3456kB, UID:1001 pgtables:628kB oom_score_adj:0
これにより、インスタンスがまったく応答しなくなったり、応答しなくなったり、SSH
AWSモニターでCPUが60%に達し、手動でクリックしてインスタンスを数回再起動するまでその状態を維持するため、ハードリブートが発生する可能性があります。
私のphp
スクリプトは簡単です。投稿画像ファイルをインポート、変換、保存し、image.intervention
関数を使用し、エラーは発生しません。 OOMキルは週に1回程度発生します。
構成をできるだけ低い構成に調整しようとしていますが、構成を下げることはpm.max_requests
私にとって解決策ではありません。私が望むのは、OOMの介入を避け、php
競合が発生する前にメモリ集約的な要求を終了することを制御することですPHP-FPM
。PHP-FPM
エラーが発生したときに自動的に再起動されるようにサービスを修正しましたが、時には高いubuntu
CPUがシステム全体をシャットダウンし、何も応答しなくなるため、まず避けるべきです。
php
arm
特定のインスタンスのリークを防ぐことは可能ですかx86
?インスタンスを安定させるにはどうすればよいですか?