프로젝트 개요
- 프로젝트 명: CRUD 게시판+ 인기 게시판 조회 서비스(redis적용)
- 진행 기간: 2025.06.22-2025.07.06
- 사용 기술 스택: Spring Boot, Spring Data JPA, MySQL, Docker, AWS EC2, GitHub Actions
- 간단 설명:
- (예: 관리자 전용 ASMR 생성 API 서버 개발)
- CRUD 기능이 포함된 게시판을 구현하고, 게시글 조회 시 작성시간과 조회수가 기록되며 조회할 때마다 조회수가 증가하도록 구현함.
- Redis 캐시를 활용해 조회수 기준 상위 5개 게시글을 /api/posts/popular 엔드포인트를 통해 빠르게 조회할 수 있도록 구성함.
주요 기능
프로젝트 구조
📦project-root
┣ 📂domain (Post)
┣ 📂dto (PostForm)
┣ 📂controller (PostApiController, RootController)
┣ 📂service (PostService)
┣ 📂repository (PostRepository)
┣ 📂config (RedisConfig)
┗ 📜Application.java SpringBootApplication 시작점
트러블슈팅 & 기술 이슈
1. 이슈 제목 (500 오류 발생)
2. 이슈 제목(/health 적용 안됨)
- 현상:
ALB(또는 헬스 체크 시스템)에서 http://도메인:8080/ 에 GET 요청을 보내 헬스 체크를 시도
- 원인 분석: ALB에서 설정한 헬스 체크 경로는 루트(/)라 하지만 초기 Spring Boot 프로젝트에는 해당 경로를 처리하는 컨트롤러가 없어 404 오류가 발생했고, 그로 인해 인스턴스가 unhealthy 상태로 판별되어 https적용 안되었었다.
- 해결 방법: 루트 경로에 헬스 체크용 컨트롤러(/health) 추가
아쉬웠던 점
- 같은 오류가 반복될때 초반에는 그냥 매번 검색하느랴 시간 소요가 많이 되었었다…다음에는 정리해두고 자주 발생되는 오류는 빠르게 해결할수있도록 하면 개발 속도가 확 단축될것같다.
좋았던 점 & 성장 포인트
- 배포를 배우고 혼자 스스로한 처음 프로젝트라 배포에 감 잡고 실전에 한걸음 다가갈수있었던것같습니다.그리고 배포가 가능하구나 하는 자신감도 아주 조금은 생긴것같았고, 오류 대처법 및 배포에 보다 익숙해진것같아서 이 프로젝트를 통해 크게 성장할수있었던것같습니다.
다음 프로젝트에 적용할 것들
- 게시글 작성/삭제 권한 …추가 가능하다면
- 혹은 과제2 스케줄링: 게시글 자동 백업 (.csv)이거 적용해서 해보기?
화면 예시 or Swagger 캡처
이미지 첨부 or Swagger 주소
https://backendteamb.site/api/posts/popular


회고 한 줄 요약
예: 이번 프로젝트를 통해 실전 백엔드 개발과 배포의 전체 흐름을 처음부터 끝까지 경험할 수 있었다.
이번 프로젝트를 통해 실전 백엔드 개발시 기획자가 배우지않은 기술을 요구했을때, 새로운 기술을 배우고 적용이 마냥 불가능하지는 않겠구나를 깨닫게 된 프로젝트 같습니다.