はじめに argon2-jvmでOoMが発生した問題と戦ったのでメモです。 まとめ argon2-jvm は JNA (Java Native Access)を介して(オフヒープの)メモリ確保を行う Kubernetesでのメモリクォータ設定時に上記を考慮しないと Out of Memoryを引き起こす可能性がある argon2やk8s、JVMの設定をチューニングを実施することで解決できる 発生した問題 とあるサーバーのAPIがたまに504 Gateway Timeoutを返す 本番リリース前のQA環境(= ごく軽い負荷)での症状 原因は不明だが解決しないと本番ではまともに動かないと想定される状況 調査したところpodがkillされている(exit code = 137)イベントが存在する 認証用のapiを叩くと即時ではないものの再現するためこの周辺が疑わしい 前提知識 今回の話ではarg

