9in-team / Backend_java

구인 구직 사이트 만들기
0 stars 0 forks source link

채팅관련 상세 아키텍처 설계 #23

Open koh-maggie opened 8 months ago

koh-maggie commented 8 months ago

기능 설명

구인 채팅 아키텍처

부가 설명

koh-maggie commented 8 months ago
koh-maggie commented 8 months ago
shinseongsu commented 8 months ago

채팅 목록 API로 조회하는것 맞음.

그림도 그려줘요...

koh-maggie commented 8 months ago

@shinseongsu 답변 감사해요. 오케이 그려서 올릴게요 🫡

koh-maggie commented 8 months ago
shinseongsu commented 8 months ago

FCM 알림 정보는 늦게 줘도 상관없을 것같은데, redis 보다는 kafka에 담아서 보내는게 좋을 것같습니다. 채팅 내용은 kafka에 넣는것보다는 redis에서 받은 그대로 저장하면 실시간 성으로 보낼수 있을것같아요~

koh-maggie commented 7 months ago

@shinseongsu FCM 알림 정보는 공유주신대로 kafka로 변경해서 하는 것에 공감합니다. 근데, 채팅 내용 같은 경우 redis 통해서 할 경우, db에 저장되기 전에 유실되면 어쩌죠 .. ?

shinseongsu commented 7 months ago

원래 큐 같은걸 사용하기전에는 큐도 데이터가 유실되기 때문에 중간에 rdb나 nosql에 비동기로 같이 저장을해놓는경우도 많습니다.

그렇기때문에 retry server와 같이 다시 재전송 서버가 필요한것입니다. 만약 유실을 고려한다면, db에 저장을 했다가 큐에 전달 전이라는 상태값을 저장하고 redis에 mongodb에 저장하는 식으로 작성을 할것이고, 유실이 되었다고 생각하는건 배치나 스케줄링으로 보내는 방법을 생각할것입니다