이강혁 (3기) ERD 설계 |
문석준 (4기) ERD 설계 |
송우석 (4기) ERD 설계 |
프로젝트의 핵심 구조를 설명하는 ERD는 아래 이미지와 같습니다.
- JWT 기반 인증: 보안을 위해 JWT(Json Web Token)를 활용하여 사용자의 로그인 및 인증 상태를 유지
- 구글 소셜 로그인: 구글 계정을 통한 간편한 소셜 로그인 제공
- 회원가입 및 로그인: 이메일과 비밀번호로 회원가입과 로그인 기능 구현
- 유저 정보 관리: 사용자 프로필 및 팔로우 상태를 생성 및 관리할 수 있는 API 제공
- 팔로우 및 언팔로우: 사용자 간 팔로우 및 언팔로우 기능으로 소셜 상호작용 지원
- 타임라인 피드: 팔로우한 사용자의 게시물을 실시간 피드 형식으로 제공
- 추천 게시물 : Home 추천 게시물 목록이 조회됩니다.
- 프로필 사진 업로드: 프로필 사진 업로드 및 변경 기능 제공
- 개인 정보 수정: 닉네임, 소개글 등 프로필 정보 수정 가능
- 활동 내역 확인: 게시물 수, 팔로워/팔로잉 수 등 사용자 활동 한눈에 확인
- 게시물 작성, 답글, 리포스트, 삭제: 사용자가 게시물을 작성, 답글달기, 리포스트 및 삭제할 수 있는 기능
- 좋아요 및 댓글 기능: 좋아요 및 댓글 기능을 통해 사용자 간 상호작용 가능
- 미디어 업로드: 사진 업로드 기능으로 콘텐츠 표현 강화
- 실시간 채팅: WebSocket과 메세지 큐 Redis를 사용하여 1:1 실시간 채팅 구현
- 채팅 기록 저장: MongoDB를 사용해 채팅 메세지를 저장하고, 사용자에게 대화 기록 제공 ,데이터 특징을 고려하여, RDBMS와 NoSQL를 사용
- RDS(MySQL): 로컬 데이터 저장 역할
- Redis: 채팅을 위한 리스너 등록
- MongoDB: 채팅 메시지를 저장하기 위한 NoSQL DB