Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

아키텍처 문제점 및 수정 계획 #132

Open
kiseoky opened this issue Mar 8, 2023 · 0 comments
Open

아키텍처 문제점 및 수정 계획 #132

kiseoky opened this issue Mar 8, 2023 · 0 comments
Assignees
Labels
enhancement New feature or request 🌍백엔드

Comments

@kiseoky
Copy link
Collaborator

kiseoky commented Mar 8, 2023

문제점 및 수정 계획

redis cache에 모든 docs content 저장됨

  • 배포시 메모리가 터질수밖에 없는 구조
  • persistent를 고려하지 않아 서버가 꺼지면 데이터 날아감
  • 수정 계획
    • nosqlDB로 이전
      • 쓰기 읽기 성능이 빠른 Key-Value Store 고려

저장시 socket -> api 요청함

  • 다시 생각해보니 너무 이상함
  • 저장은 socket -> db로 하고, 읽는건 api <- db로.

CRDT 스냅샷 적용

  • 일정 시간마다/개수마다 스냅샷 저장 후, 요청 시 스냅샷 + a 응답.
  • 이게 왜 필요한지와 정확한 구현에 대한 의문점이 있어 논의가 필요함.

node 서버 클러스터링이 안되어있음

  • node는 single thread 구조기 때문에 단일 서버 운영 시 요청이 몰리면 timeout이 발생함
  • 아직 우선순위는 낮음
  • 소켓 서버 클러스터링 시 소켓 정보 공유를 위한 redis 필요

메시지 이벤트스트림 적용

  • 소켓 메시지 순서보장, 소켓 서버가 DB저장 신경X
  • 복잡도가 크게 증가할 가능성. 고민이 필요함.
@kiseoky kiseoky added enhancement New feature or request 🌍백엔드 labels Mar 8, 2023
@kiseoky kiseoky self-assigned this Mar 8, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request 🌍백엔드
Projects
None yet
Development

No branches or pull requests

1 participant