AWS + Rails + Pumaで作成したWebサイトのメモリ消費を抑える

実現したいこと

AWS + Rails + Pumaでメモリ消費を抑える

前提

前提が長いため質問部分に〇番号を記載しております。

AWS + Rails + PumaでWebサイト(動画や写真を投稿できるサイト)を作成しているのですが、Pumaを起動して数時間でメモリが一気に増加します。

もともとAWSはメモリ2Gで運用していたのですが、freeコマンドで確認すると数時間でUsedが1.8Gとなってしまいます。

ですのでメモリを4Gまで増やしたのですが、それでも数時間でUsedが3.5G程度まで増えてしまい、freeがいつも200M程度しかありません。

この問題はPumaを再起動すると一時的に解決はいたします(freeが3G程度となる)。

調べてみるとPumaのメモリを多く消費する問題は多く出てきており、
① 対策として「Puma Worker Killer」がよく出てくるのですが、こちらを使用するのが一般的なのでしょうか?
② それともメモリを増やして解決したりするのが一般的でしょうか?

もう一点立て続けな質問となり恐縮なのですが、私のほうでもう一つ同様にAWS + Rails + PumaでWebサイトを作成して(こちらも動画や写真を投稿できるサイト)おります。
こちらのサーバーでも同様の問題が起きており、メモリも4Gに増やして運用しております。

こちらのサーバーではPumaを再起動してもメモリの空きは解決せず、Linuxのメモリ解放コマンド
$ echo 3 > /proc/sys/vm/drop_caches
でメモリの空きを作ることができます。

③ この差がどういったものから来るのでしょうか?
こちらは可能性だけでも示唆してくださると非常に助かります。

発生している問題・エラーメッセージ

メモリの増加

試したこと

現状では考え方が正しいのか等、状況の理解が優先と考えたため実行はまだしていない状況です。

コメントを投稿

0 コメント