재부팅 후 관리자 패널에서 업그레이드한 후 로그인한 사용자의 포럼 스레드가 로드되지 않습니다. 속도를 높이는 방법은 무엇인가요?

로그인 상태에서는 이제 거의 스레드를 게시할 수 없습니다.

로그아웃 상태에서는 스레드가 정상적으로 작동합니다.

업그레이드가 중간에 실패하여 포럼이 오프라인이 되었습니다. codex를 사용하여 업그레이드를 수정했고, 다시 정상 작동했습니다.

Digital Ocean에 호스팅되어 있습니다.

어떻게 된 일인지 제 관리자 패널에서만 렉이 걸립니다.

조사 결과:

  • discourse-question-answer 플러그인이 upstream에서 구식입니다. 현재 실행 중인 복사본은 2022-08-17 버전입니다.

  • 라이브 사이트가 이 문제로 인해 실패한 것은 아닙니다. 복구 후 categories.json, latest.json, / 경로 모두 정상적으로 서빙되고 있었습니다.

  • 실제 문제는 더 좁은 범위였습니다: 재구축/부트스트랩 과정에서 Chat의 일회성 카테고리 시딩이 플러그인의 BasicCategorySerializer 훅에 도달했고, 해당 훅이 object.send(key)를 지나치게 공격적으로 호출했습니다.

    이로 인해 재구축 로그에 Error seeding chat category - #<NoMethodError: undefined method ‘qa_enabled’ for an instance of Category> 오류가 발생했습니다.

변경 사항:

  • 실행 중인 플러그인 직렬화기를 수정하여 send를 맹목적으로 호출하는 대신 안전한 폴백을 사용하도록 했습니다.

  • 동일한 호환성 패치를 /var/discourse/containers/app.yml에 추가하여 향후 재구축 시 자동으로 다시 적용되도록 했습니다.

  • /var/discourse/containers/app.yml.bak-2026-04-08 및 /var/discourse/containers/app.yml.bak-2026-04-08-qa 경로에 백업을 유지했습니다.

검증:

참고 사항:

  • 라이브 앱이 정상적으로 작동하고 있고, 동등한 패치가 이미 실행 중인 컨테이너에 성공적으로 적용되었기 때문에 영구적인 훅을 추가한 후 전체 재구축을 다시 실행하지 않았습니다. 다음

    재구축 시 이 설정이 유지되어야 하지만, 해당 정확한 경로는 아직 재실행되지 않았습니다.

  • 원하시면, 방치된 upstream 저장소에서 직접 클론하는 대신 해당 플러그인을 최종적으로 포크하고 고정(pinned)해야 하는지에 대해 한 번 더 검토해 드릴 수 있습니다.

그 플러그인은 비추천(deprecated) 상태입니다. 제거해야 합니다.

안전 모드로만 로드하면 어떻게 될까요?

예: https://forum.longevitybase.org/t/microbiome2-thread/511/1?safe_mode=no_plugins%2Cno_themes

하지만 오늘은 안전 모드에서도 지연 현상이 발생합니다. 안전 모드에서도 로딩이 되지 않는다면 더 깊은 수준의 변경 작업이 필요할까요?

app.yml 파일에서 플러그인을 그냥 제거하면 안 될 이유가 있나요?

안전 모드는 플러그인의 프론트엔드 코드만 비활성화합니다. 따라서 백엔드에서 발생한 문제는 여전히 포럼에 영향을 줄 수 있습니다.