nodebb 잠깐 사용해본 경험담
-
@busker 쨘 그런 당신을 위해 DB search 한국어용 만들어 두었습니다. 컨테이너 채로 사용하시는게 편하실거에요 :)
docker pull netvpc/nodebb
https://github.com/netvpc/nodebbdocker-compose는 업데이트가 안되었네요.
시간나면 업데이트 하겠습니다.
일반 nodebb용 docker-compose와 같습니다.지금보니 mecab 사전을 업데이트 해야하네요.. ㅠㅠ
곧 사전 추가하겠습니다 -
개발하신 플러긴을 nodebb 커뮤니티에 올리셔도 좋을 것 같아요!
nodebb-plugin-dbsearch-for-chinese 프로젝트처럼요 -
@navystack
안녕하세요!
https://github.com/NavyStack/nodebb-plugin-dbsearch-korean
위에 깃에 올려주신 방법으로 하다가 막혀서 질문드립니다!기존 도커로 nodeBB 구동 중이고 기본 dbsearch 사용중이였습니다.
set -eux; \ dpkgArch="$(dpkg --print-architecture)"; \ case "${dpkgArch##*-}" in \ amd64) mecabArch='x86_64';; \ arm64) mecabArch='aarch64';; \ *) echo >&2 "unsupported architecture: ${dpkgArch}"; exit 1 ;; \ esac; \ mecabKoUrl="https://github.com/Pusnow/mecab-ko-msvc/releases/download/release-0.999/mecab-ko-linux-${mecabArch}.tar.gz"; \ mecabKoDicUrl="https://github.com/Pusnow/mecab-ko-msvc/releases/download/release-0.999/mecab-ko-dic.tar.gz"; \ wget "${mecabKoUrl}" -O - | tar -xzvf - -C ./opt; \ // 서버 현재 폴더에 설치 wget "${mecabKoDicUrl}" -O - | tar -xzvf - -C ./opt/mecab/share // 서버 현재 폴더에 설치
서버에서 위에 쉘에 있듯이 현재 폴더에 mecab 설치하고
컨테이너 내에 /opt 폴더로 copy 했습니다.그리고 컨테이너 내에서 npm 이용하여 설치하고 재빌드 & 재부팅 했습니다.
npm install https://github.com/NavyStack/nodebb-plugin-dbsearch-korean.git
그 후 ACP 플러그인에 떠야하나요?
현재 달라진게 없어서 질문들렸습니다.. ㅠ_ㅠ -
헉 오래되어서 기억이 안나네요. nodebb 자체가 redis를 염두해두고, MongoDB로 옮긴건데 Postgres가 나중에 끼워진 모양새라서요...
https://github.com/NavyStack/nodebb-plugin-dbsearch-korean/blob/master/lib%2Fpostgres.js#L9-L9
기존에 있던 플러그인 커밋을 포크해서 가져온거라, postgres라면 조금 손 봐야할 수도 있습니다.
마찬가지로 개발팀에서도 Postgres는 늦게 업데이트되는 모양새이고, DB관리하는걸 별로 안좋아해서 저는 postgres를 mongodb altas 로 옮겼습니다.
-
노드 커뮤니티에 postgres보다 mongodb에 더 자신있다고 개발자가 쓴 글을 본적 있어요.
redis는 Scaling NodeBB 할때 꼭 필요한 것 같아요.nodebb 자체가 redis를 염두해두고, MongoDB로 옮긴건데 Postgres가 나중에 끼워진 모양새라서요...
추가 경험담 기록으로 남깁니다.
- 동영상 업로드 어려움
nodebb-plugin-link-preview 플러긴이 링크 미리보기나 유튜브 링크는 멋지게
보여주나 mp4 재생은 불가. 몇가지 동영상 재생 플레이어가 있긴 하나 오래된 버전 같음.
_ - 페이지네이션 느림
20만건 글 등록하고 테스트 했어요.(페이지당 topic 20, posts 20 설정)
맨 처음 페이지를 누르면 꽤 오랜 시간동안 로딩이 안되더라구요
Slow query 로그 살펴보니 skip/limit 구문으로 하는데,
이 방법이 도큐먼트가 증가할수록 느려진다고 합니다.
참고: mongdb에서 페이지네이션1, 페이지네이션2
_ - nodebb 업데이트 속도 빠름
개발팀의 열정도를 반영하는 증거이나 SSH에서 명령어로 수동업데이트 과정이 좀 번거로움
- 동영상 업로드 어려움