SpringBoot를 사용하여 API 서버를 개발합니다.
view는 없지만, API 성능 개선, 부하 테스트, 쿼리 튜닝, redis 캐싱, CI/CD + 부하테스트 자동화 등을 수행합니다
사용자 게시판을 여러가지 방법으로 구현하고 다양한 기능을 넣어 고도화 시켜보고자 시작합니다.
- 기본적인 게시판 CRUD (게시글/댓글 CRUD, 게시글 임시저장, 로그인 및 인증/인가, 추천, 알림 등)
- 로그인: github oauth + JWT
- 기본 CI/CD
- 배포시 자동화 된 테스트 인프라 생성, 부하테스트 후 결과 슬랙 전송 (Ngrinder Rest API, Github Action, AWS CLI, SLACK)
- 레디스 캐싱 (조회수 update 배치처리, 게시물 단건조회 등)
\
$ ./gradlew build --exclude-task test
$ cd build/libs
$ java -jar gesipan-0.0.1-SNAPSHOT.jar --profile=test
$ ./gradlew build
$ cd build/libs
$ java -jar gesipan-0.0.1-SNAPSHOT.jar --profile=test
ERD:
spring-boot-starter-web
spring-boot-starter-validation
spring-boot-starter-data-jpa
com.querydsl:querydsl-jpa
spring-boot-starter-data-redis
io.jsonwebtoken:jjwt:0.9.1
org.projectlombok:lombok
com.h2database:h2
mysql:mysql-connector-java
spring-boot-starter-test