Upgrade to Pro — share decks privately, control downloads, hide ads and more …

データベースのメモリ管理周り〜OutofMemoryを撲滅したい〜

 データベースのメモリ管理周り〜OutofMemoryを撲滅したい〜

最近DB周りで起きたインシデントへの考察と対策をお話します。

Sankyo Toshio

July 20, 2024
Tweet

More Decks by Sankyo Toshio

Other Decks in Technology

Transcript

  1. 考察 6 • ここ最近で発生するようになった • 発生タイミングはだいたい決まっている ◦ 一括アップロードを行っているタイミングが怪しいが Staging環境で負荷テストを行っても再現しない(そもそも完全 に本番環境を再現できていない)

    一括アップロード単独で発生するわけでもなさそう。 • データベースのスペックは(まだ)問題なさそう。 平時は問題ないので、単純にスケールアップはしたくない ◦ 最大コネクション数 ◦ メモリ
  2. やったこと 7 • Scout APMで重たい処理を確認して、 APIレベルのN+1潰す。使用メモリ削減 • Slow DB Queryを確認して対策

    • 小さいクエリでも、毎回DB問い合わせ不要なものはキャッシュを使 う • Postgresの作業メモリ(work_mem)をデフォルト値から増やす