Skip to content

YAPP-18th/iOS1_Backend

Folders and files

NameName
Last commit message
Last commit date
Jun 29, 2021
Feb 24, 2021
Jun 26, 2021
Jul 9, 2021
Jun 4, 2021
Jun 4, 2021
Jan 20, 2021
Jul 2, 2021
Jun 1, 2021
Jun 26, 2021
May 20, 2021
Feb 24, 2021
Feb 24, 2021

Repository files navigation

Bucket buok

buok

버킷리스트를 작성하며 나를 기록해 보세요!

미래를 ‘완성된 집’ 현재를 ‘설계도’라고 생각해 봅시다.

buok은 당신이 멋진 집을 완성할 수 있도록 도와드릴 거예요.

어떤 집을 짓고 싶은지 찾아보고, 구체적인 설계 계획을 할 수 있도록요!

생각날 때마다 미래 계획을 담을 버킷북을 만들어 보세요.

완성된 버킷북 중 나를 잘 나타내는 것을 골라 나만의 히스토리로 만들어보세요.

저희와 함께하다 보면 당신의 꿈이 이뤄져 있을 거예요.



📚 API Docs


📐프로젝트 전체 구성도

스크린샷 2021-06-16 오후 2 35 32


🛠 사용한 기술 스택

TechStack


📂 Database Modeling

ER Diagram

프로젝트 주요 관심사

공통사항

  • 지속적인 성능 개선
  • 나쁜 냄새가 나는 코드에 대한 리팩토링

코드 컨벤션

  • 프로젝트 전반적으로 일관되게 코드를 작성하려고 노력

성능 최적화

  • DB 서버와의 통신을 최소화(당연한 이야기지만 N+1 쿼리를 지양하려고 노력)

프로젝트 하면서 겪은 과정들

AccessToken, RefreshToken 과정 정리

Spring Security 없이 JWT 연동

스프링부트 환경에서 JWT 연동하기 - 아영
Redis Cache 적용하기 - 아영


Session을 사용하지 않고 JWT를 사용한 이유는 무엇일까?

정균(작성)


JPA가 아니라 MyBatis를 사용한 이유

프로젝트에서 JPA가 아닌 MyBatis를 선택한 이유는? - 정균


FireBase Alarm Async 보내기

정균(작성)


Spring Logback으로 Slack, CloudWatch로 에러 로그 전송하기

Spring Error log CloudWatch로 전송하기 - 정균
Spring Error log Slack으로 전송하는 법 - 정균
Spring Filter, Interceptor로 Request logging 하기 - 정균


수 많은 에러들을 어떻게 관리하고 있을까?

Error 클래스 상속 관계를 통한 ControllerAdvice, ExceptionHandler 처리하기 - 정균


이메일 인증까지의 과정

비밀번호 재설정을 위한 이메일 전송부터 인증까지의 과정

Thymeleaf을 이용한 이메일 전송하기 - 아영
Redis 이용한 이메일 인증하기 - 아영


비밀번호 암호화

단방향 해시 함수와 BCrypt로 비밀번호 암호화하기 - 아영


AOP로 중복로직 제거하기

프로젝트에서 대부분 API에서 인가 체크가 필요했는데, AOP를 적용하여 중복 로직을 제거

AOP를 사용하여 중복 로직 제거하기 - 정균
ThreadLocal로 사용자 정보 저장하기 - 아영


yml 파일 prod, dev, local 환경 분리하기

application.yml을 prod, dev, local로 분리시키기 - 정균


이미지 리사이징

버킷리스트 앱의 특성상 이미지 업로드 양이 많기 때문에 AWS Lambda를 이용하여 이미지 리사이징 기능을 추가

Lambda로 Image Resize 하기 - 정균


Jenkins와 CodeDeploy, Docker를 이용하여 CI/CD 구현하기

무중단 자동화 배포 기능을 추가

Jenkins CI 설정 - 아영
CodeDeploy, Load-Balancer 설정 - 정균


브랜치 관리 전략 & 커밋 컨벤션


Contributors ✨


Gyunny

💻

Ayoung

💻

기여자 목록 을 확인하여 이 프로젝트에 대해 자세히 확인할 수 있습니다.


🔗 Repository Link

About

YAPP 18th Project Buok Backend App.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages