Sidekiq 경고

RAM 8GB인 가상 서버에서 Sidekiq가 500M을 약간 초과하는 메모리를 사용하는 것이 문제가 될까요?


다음 줄을 제 app.yml 파일에 추가해야 하는지 궁금합니다.

env:
  UNICORN_SIDEKIQ_MEMORY_KILLER_MAX_RSS: 1024

총 RAM 용량은 여기서 도움이 되지 않습니다. PHP 세계에서 워커(worker) 수와 할당된 메모리 양의 관계와 비슷한 개념이긴 하죠. 물론 완전히 다른 이야기이지만요 :joy:

제 경험상, 구성 요소나 플러그인이 거의 없고 사용자도 없는 완전히 새로운 설치 환경이라면 500이면 충분합니다. 하지만 최소 550 이상은 필요합니다.

마지막 재빌드는 이 값이 700으로 설정되어 있어 정상적으로 작동했습니다.

app.yml 변경 전의 경고보다 0.1MB 더 높았던데, 아직도 경고가 뜨는 게 좀 이상합니다

다른 스레드에서는 다른 설정이 언급되어 있습니다.
Sidekiq is consuming too much memory

하지만 최근에도 UNICORN_SIDEKIQ_MAX_RSS를 조정했음에도 Sidekiq의 메모리 사용량이 여전히 높은 유사한 상황이 해결되지 않은 것을 확인할 수 있습니다.
Sidekiq is consuming too much memory even with UNICORN_SIDEKIQ_MAX_RSS adjusted

memory overcommit must be enabled

? 재구축 과정에서 발생했습니다

네, 저는 항상 메모리 오버커밋을 사용했고, 이에 대해 여러 번 글을 올린 적도 있습니다. 다른 분들도 이렇게 사용하는 경우가 있지만, 공식 스크립트나 레시피에 포함될 만큼 충분히 이해되고 수용되지 못했다고 느낍니다.

(또한 투명 거대 페이지(transparent huge pages)도 비활성화했지만, 이는 작은 메모리 시스템에서 생존을 좌우하는 문제라기보다는 단순한 성능 문제입니다.)