■ MySQL
니들이 글을 싸면 documents 라는 데이터베이스 테이블에 저장됨
보통 제목, 내용 이런게 다 들어가는데
십덕 검색조건이 제목,내용,제목+내용,작성자 이런식임
원래 귀찮아서 fulltext index로 구성했는데 한글 특성상 2글자 검색이 병맛 및 오버헤드라 제대로 검색이 안됨
■ Debezium, Kafka, ES Sink Connector, Elasticsearch
아 내가 왜 이런 똥사이트에 이런거까지 적용했을까
이왕하는거 fm으로 하자 해서 구성하는데 이거 운영서버에 바로 적용하다 뻑나면 1주일동안 십덕 못올릴거 같아서
스테이지 서버 구성함
아무튼
데베지움: mysql에서 데이터 변한거 추적
카프카: 데베지움에서 추적한걸 ES에 쏴주는 역할
커넥터: 직접 mysql에 붙고 es에 붙는 역할
es: 검색엔진
■ Spring Boot
검색이냐 게시글 조회냐를 구분지어서 검색이면 es를 타서 게시글 id를 가져옴
그걸 mysql에 재쿼리해서 결과를 가져옴.
걍 es에서 직접 가져와도 되지만, 조회수를 레디스로 관리해서 이런 짓을 해야함
■ Vue.js
검색창 입력 → API 호출
검색 결과 리스트 보여줌
필터링/페이지네이션 지원
■ 전체 흐름 요약
글 쌈
↓
MySQL
↓
Debezium
↓
Kafka
↓
ES Sink Connector
↓
Elasticsearch
↓
Spring Boot
↓
Vue.js
아 쓰고보니 너무 힘들었다
직업병이라 제대로 안하면 계속 생각나서 다음 단계로 못나가는듯.
죽은 십덕 살리려면 할게 많은데 아무튼 조만간 좀 신박한거 많이 생길거임

댓글 (5)
현기증나게 구성해놨네
그래서 첨 접속하면 0.5초 정도는 글 없다거 나오는듯.
그거 클라우드 플레어 무료써서 후쿠오카 팝 붙어서 그런거임 ㅠㅠ 그거도 곧 해결함
힘을내삼.
힘내서 이제 빨라짐
오??