サーバ運用初心者です。
ECサイトをAmazon EC2にて運用しており、CPUが95%以上の状態で張り付くという事象が発生してしまい、
504 Timeoutが頻発する事態となってしまっています。
※CPUが95%以上の状態で張り付く問題はとある機能が原因であることは判明。
※とある機能そのものに問題があるというよりは、PHPの"memory_limit"が足りていなくてCPUに無理させてしまっているのが問題とのこと。
そこでサーバーリソースの見直しを行っているのですが、インスタンスタイプを決めあぐねています。
EC-CUBEをAmazon EC2で運用する場合、どのインスタンスファミリーが良いのでしょうか?
また、割り当てされるリソースはどのインスタンスサイズが良いのでしょうか?
PHPのログを確認してみますと、以下のログがあり"memory_limit"は各ユーザーごとに256MB程度まで割り当てる必要がある?様に思えます。
PHP Fatal error: Allowed memory size of 201326592 bytes exhausted (tried to allocate 54327952 bytes) in /opt/eccube/vendor/symfony/cache/Traits/FilesystemTrait.php on line 98
各種設定値
####PHP - "memory_limit"
管理者側: 4096MB
ユーザー側: 192MB
####Apache - mpm_prefork
<IfModule mpm_prefork_module> StartServers 20 MinSpareServers 5 MaxSpareServers 20 ServerLimit 50 MaxRequestWorkers 50 MaxConnectionsPerChild 0 </IfModule>
試したこと
ここに問題に対して試したことを記載してください。
##各種構成・補足情報(FW/ツールのバージョンなど)
####サーバー
Linux: Ubuntu20.04
Web Server: Apache 2.4.41
Database: PostgreSQL 10.15
PHP: PHP 7.4.3
####EC-CUBE
バージョン: 4.0.5
導入プラグイン数: 34 (有効)
商品数: 6,000商品弱 (今後ちょっとずつ増えていく予定)
カテゴリ数: 2,100カテゴリ弱
####AWS
■EC2
インスタンスタイプ: m5.xlarge(4vCPU / 16GB Mem)
■RDS
インスタンスタイプ: db.m5.large(1Core 2CPU / 8GB Mem)
■ALB + WAF
→導入済み

回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/08/12 23:38
2021/08/13 07:26