経緯
- Ruby公式Dockerイメージで立てたサーバで、メモリ消費量が増加してpumaが勝手に再起動してサービスが瞬断することが発生するようになった
- その対策として、メモリ領域の断片化を減らしてくれるjemallocを導入した
導入方法
以下を追記
Dockerfile
FROM ruby:2.4.2
RUN apt-get update && apt-get install -y libjemalloc-dev libjemalloc2
ENV LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libjemalloc.so.2
※ 以前はパッケージの名前libjemalloc1
だったが、今はlibjemalloc2
に変更になっていた