방금 전부 정리했는데 또 3k가 생겼네요
관리자 대시보드에서 채팅이나 요약 설정을 찾아보려 했지만 아무것도 발견되지 않았습니다.
이게 어디서 오는 건지 아시는 분 계신가요? ![]()
P.s. 이 잡들 때문에 제 사이트가 엄청 느려집니다 ![]()
대부분 큐에 있는 작업이 모두 UserEmail 작업인가요?
이메일 서비스 대시보드(이메일 서비스 제공업체 쪽의 대시보드이며 Discourse가 아닙니다)를 확인해 보시고, 거기에 관련 정보가 있는지 살펴보세요
감사 기록(audit trail)이 있나요? 지속적으로 전송되는 메일의 기록을 확인할 수 있나요?
마지막으로 전송된 메일은 언제인가요?
일부는 통과되고 있지만, 처리 속도가 충분히 빠른 건가요?
어떻게 확인할 수 있나요?
discourse(관리자/이메일/발송)에서 채팅 요약 이메일이 하루에 5~6통, 대부분 1통이거나 아예 없는 등 매우 낮은 빈도로 발송된 것을 확인했습니다.
그런데 왜 sidekiq에 이렇게 많은 작업이 생성되는 걸까요?
관리자 화면에서 이메일 로그를 확인해 보세요. 더 명확한 정보를 얻을 수 있을 겁니다.
한 가지 눈치챈 점은 sidekiq 큐 문제가 3.4.0.beta4-dev로 업그레이드한 직후 시작되었다는 것입니다. 비슷한 시점에 설치한 다른 인스턴스에도 문제가 있는 것 같습니다(현재 확인 중).
또한 ID를 살펴보니 시스템이 모든 사용자에게 채팅 요약을 보내려고 시도하는 것 같습니다. ![]()
이것이 정상적인가요?
업데이트:
채팅을 끄면 해당 작업이 다시 큐에 쌓이지 않지만, 제 사이트는 채팅 기능이 어느 정도 필요하고 다른 해결책을 계속 찾고 있습니다.
추가 업데이트:
채팅 기능을 2일간 껐다가 다시 켜고, 채팅 채널 보관 기간을 180일에서 3일로 변경했습니다. 이제 정상적으로 작동하는 것 같으며 계속 지켜볼 예정입니다.
02/01 업데이트:
보관 기간을 7일로 설정했고, 현재 대기열에 있는 작업이 약 1,101,685개입니다. 서버가 이 양을 처리할 수 있는 것 같고 사이트가 느려지지 않는 것 같습니다.
@th21 사용자 수와 채팅 채널 수는 몇 개인가요?
low 큐가 처리되는 속도는 얼마나 빠르나요(아니면 느리나요
)?
@th21 죄송합니다. 실제로 버그였고, 다음을 통해 수정될 예정입니다.
채팅에서 "읽지 않은 멘션 또는 DM이 있는 사용자"를 모두 나열하는 쿼리가 있는데, 너무 교묘하게 만들려다 보니 오히려 오류가 발생했습니다. 채널 내 멘션이나 DM의 읽지 않은 항목에 대해 “채팅 요약”(즉, 이메일 알림)을 큐에 넣어야 하는데, 대신 모든 메시지에 대해 작업을 큐에 넣었습니다
해당 작업이 5분마다 실행되었기 때문에, 쓸모없는 작업들로 sidekiq가 쉽게 부풀어 올랐습니다… (참고: 멘션을 검색할 수 없었기 때문에 다행히 이메일은 발송되지 않았습니다).
감사합니다. 이 커밋이 test-passed에 병합될 예정된 시간은 언제인가요?
48시간 이내
@th21 검토와 병합이 완료되었습니다 ![]()