-
Notifications
You must be signed in to change notification settings - Fork 0
Home
본 문서는 우리 서비스의 백엔드 구조와 설계 방향을 한눈에 보여주는 메인 페이지임.
상세한 도메인 설계 및 구현 내용은 각 영역별 문서에서 확인할 수 있도록 구성함.
현재 서비스의 백엔드 구조와 설계 기준을 정리한 영역임.
- 멀티 모듈 기반 도메인 구조 설계
- Spring Boot 기반 REST API 서버 구성
- 도메인 중심 설계 + 계층 분리 (Domain / Application / Infrastructure)
- Redis, MongoDB 등 다양한 데이터 저장소를 목적에 맞게 활용
서비스의 핵심 비즈니스 로직과 도메인 분리를 중심으로 설계한 영역임.
- 도메인별 모듈 분리 (User, Housing, Review 등)
- Aggregate 기준 설계 및 책임 분리
- DTO 전략 및 계층 간 데이터 전달 구조 정리
- 도메인 간 의존성 최소화 및 확장성 고려
📄 [도메인 설계 문서](https://github.com/PinHouse/PinHouse_BE/wiki/Domain/)
API 구조 설계와 성능 개선 전략을 정리한 영역임.
- REST API 설계 기준 및 응답 구조 표준화
- N+1 문제 해결 (Fetch Join / Batch 조회 / Projection DTO)
- 인덱스 설계 및 쿼리 최적화 전략
- API 응답 속도 개선 과정 및 결과 정리
📄 [API & 성능 최적화 문서](https://github.com/PinHouse/PinHouse_BE/wiki/API-Performance/)
데이터 저장소 선택과 활용 전략을 정리한 영역임.
- RDBMS 기반 트랜잭션 처리 구조
- Redis 기반 캐싱 전략 (Look-Aside)
- MongoDB 기반 비정형 데이터 관리 (알림, 댓글 등)
- 데이터 일관성 및 캐시 무효화 전략
📄 [데이터 관리 문서](https://github.com/PinHouse/PinHouse_BE/wiki/Data/)
사용자 인증 및 보안 설계를 정리한 영역임.
- JWT 기반 인증 구조
- OAuth2 소셜 로그인 연동
- Spring Security 설정 및 권한 관리
- API 접근 제어 및 보안 정책
📄 [인증 및 보안 문서](https://github.com/PinHouse/PinHouse_BE/wiki/Security/)
시스템 간 결합도를 낮추기 위한 비동기 처리 구조를 정리한 영역임.
- Redis Pub/Sub 기반 메시징 구조
- 이벤트 기반 처리 흐름 설계
- 채팅 및 실시간 기능 처리 방식
- 메시지 유실 문제 해결 과정
📄 [비동기 처리 문서](https://github.com/PinHouse/PinHouse_BE/wiki/Async/)
안정적인 서비스 운영을 위한 테스트 전략을 정리한 영역임.
- 단위 테스트 / 통합 테스트 전략
- 테스트 데이터 관리 및 환경 분리
- 부하 테스트 기반 성능 검증
- 코드 품질 및 리팩토링 기준
📄 [테스트 문서](https://github.com/PinHouse/PinHouse_BE/wiki/Test/)
백엔드 개발 과정에서 발생한 문제와 해결 과정을 기록한 영역임.
- 성능 문제 및 DB 병목 해결
- 캐시 전략 적용 과정에서의 이슈
- 비동기 처리 및 메시지 유실 문제 해결
- 실제 장애 대응 및 개선 사례
📄 [트러블슈팅 문서](https://github.com/PinHouse/PinHouse_BE/wiki/Troubleshooting/)
읽어주셔서 감사합니다.