서비스 이미지

🐾 프로젝트 소개
- 프로젝트 기간 : 2024.3 ~ 2024.6
- 인원 : 6인 개발 (백엔드 3인, 데브옵스 1인, 프론트엔드 2인)
- 주제 : 현재 위치 기반, 제한시간 있는 익명 SNS
- 프로젝트 핵심 기능
- 유저는 생존 시간 동안 타인의 게시글을 볼 수 있음
- 생존 시간은 게시글을 작성하여 기본 생존 시간 2시간 획득
- 게시글은 최초 작성 시 2시간 동안 생존하며 2시간 후 삭제 됨
- 작성한 게시글에 타인의 댓글, 좋아요를 받으면 5분씩 늘어남 (최대 48시간)
- 게시글의 생존 시간이 연장되면 본인이 타인의 게시글을 열람할 수 있는 생존시간도 똑같이 증가
- 프로젝트 담당 업무 - 박상신
- 유저 프로필 기능 구현
- 유저의 Flash 게시글 조회 권한 및 시간 로직 구현
→ 게시글은 처음 작성 시 2시간 동안 유지되며, 사용자에게도 2시간의 조회 권한 시간을 부여합니다.
→ 댓글이나 좋아요를 받을 때마다 최대 48시간까지 조회 권한 시간과 게시글 생존 시간이 연장됨
(같은 사용자로부터의 중복처리를 방지하여 불필요한 시간 증가를 막는 로직 적용)
- 프로젝트 기여 비율 (27%)
백엔드 3인 개발 팀에서 전체 프로젝트 중 약 27%를 담당하여, 유저 Flash 게시글 조회 권한 및 생존 시간 관리 로직을 구현하고, Memcached를 이용해 TTL 기반 권한 만료 처리 및 실시간 조회 성능 최적화를 수행하였습니다.
🏗️ 프로젝트 흐름에 따른 아키텍처 설계 의사결정
Memcached
도입이유
- Redis 라이선스 문제로 인한 대체 DB 필요
2024년 초 Redis의 라이선스 변경 이슈를 사전에 방지하기 위해
같은 InMemory DB이자 오픈소스인 Memcached를 선택